zoukankan      html  css  js  c++  java
  • php写导入,导出 mysql csv

    php 从 csv转换 tsql

    function csv2sql($table, $csv_fieldname = 'csv') {
    
        $handle = fopen($csv_fieldname, 'r');
        if (!$handle)
            die('Cannot open uploaded file.');
    
        //$fields=var_dump($csvData);
        $row_count = 0;
        $sql_query = "";
        $rows = array ();
        //Read the file as csv
        while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
            $row_count++;
            if ($row_count == 1) {
                $sql_query .= "INSERT INTO $table(" . implode(',', $data) . ") VALUES(";
            } else {
                foreach ($data as $key => $value) {
                    $data[$key] = "'" . addslashes($value) . "'";
                }
                $rows[] = implode(",", $data);
            }
        }
        $sql_query .= implode("),(", $rows);
        $sql_query .= ")";
        fclose($handle);if (count($rows)) { //If some recores  were found,
            return $sql_query;
        } else {
            return "";
        }
    }

    导出mysql 到csv文件

    include ("conn.php");//connect 语句就不写了 
    //
    // execute sql query
    //
    function mysql2csv($tablename, $fname) {
        $query = sprintf("SELECT * FROM $tablename");
        $result = mysql_query($query) or die("no connection");
    
        header("Content-Type: text/csv;charset=utf-8");
        header("Content-Disposition: attachment;filename=$fname.csv");
        //
        // output header row (if atleast one row exists)
        //
        $row = mysql_fetch_assoc($result);
        if ($row) {
            echocsv(array_keys($row));
        }
        //
        // output data rows (if atleast one row exists)
        //
        while ($row) {
            echocsv($row);
            $row = mysql_fetch_assoc($result);
        }
    }
    //
    // 处理每一行
    //
    function echocsv($fields) {
        $separator = '';
        foreach ($fields as $field) {
            if (preg_match('/\\r|\\n|,|"/', $field)) {
                $field = '"' . str_replace('"', '""', $field) . '"';
            }
            echo $separator . $field;
            $separator = ',';
        }
        echo "\r\n";
    }
  • 相关阅读:
    改变标题栏颜色和顶部栏颜色
    listview崩溃问题
    android欢迎界面
    ASZ参考代码
    shape的使用
    listview加边框
    toolbar左边有一小段空白
    as用百度地图不联网就gg
    OOM-OutOfMemory
    java reference定位
  • 原文地址:https://www.cnblogs.com/senion/p/2515244.html
Copyright © 2011-2022 走看看