php array 数组生成 csv 文件
在
php 中生成 csv 文件的方法很简单,这里我来介绍一下自己用到的一个实例,吧数组直
接换成
csv 文件输出,有需要了解的朋友可参考。
例
代码:
<?php
$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 文件的实例
读取
csv,使用 fgetcsv()文件指针中读入一行并解析 csv 字段
比如说我要读取如下
csv 文件
代码如下:
<?php
/** by www.111cn.net */
$row = 1;
$handle = fopen("file.csv","r");