php array数组生成csv文件_PHP教程

WBOY
發布: 2016-07-13 10:46:45
原創
1221 人瀏覽過

在php中生成csv文件的方法很是简单,这里我来介绍一下自己用到的一个实例,把数组直接转换成csv文件输出,有需要了解的朋友可参考。

 代码如下 复制代码

$data = array(
        array( 'row_1_col_1', 'row_1_col_2', 'row_1_col_3' ),
        array( 'row_2_col_1', 'row_2_col_2', 'row_2_col_3' ),
        array( 'row_3_col_1', 'row_3_col_2', 'row_3_col_3' ),
    );
$filename = "example";
 
    header("Content-type: text/csv");
    header("Content-Disposition: attachment; filename={$filename}.csv");
    header("Pragma: no-cache");
    header("Expires: 0");
 
outputCSV($data);
 
function outputCSV($data) {
        $outputBuffer = fopen("php://output", 'w');
        foreach($data as $val) {
        foreach ($val as $key => $val2) {
         $val[$key] = iconv('utf-8', 'gbk', $val2);// CSV的Excel支持GBK编码,一定要转换,否则乱码
         }
            fputcsv($outputBuffer, $val);
        }
        fclose($outputBuffer);
    }
 
?>

例2

看一个读取csv文件的实例

读取cvs,使用fgetcsv()文件指针中读入一行并解析 CSV 字段

 比如说我要读取如下csv文件

 代码如下 复制代码

/** by www.bKjia.c0m */
$row = 1;
$handle = fopen("file.csv","r");
//fgetcsv() 解析读入的行并找出 CSV格式的字段然后返回一个包含这些字段的数组。
while ($data = fgetcsv($handle, 1000, ",")) {
    $num = count($data);
    echo "

$num fields in line $row:
n";
    $row++;
    for ($c=0; $c   //注意中文乱码问题
  $data[$c]=iconv("gbk", "utf-8//IGNORE",$data[$c]); 
        echo $data[$c] . "
n";
    }
}
fclose($handle);
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/632920.htmlTechArticle在php中生成csv文件的方法很是简单,这里我来介绍一下自己用到的一个实例,把数组直接转换成csv文件输出,有需要了解的朋友可参考。 例...
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板