PHP 把数据写入CSV格式文件,并返回路径
使用CSV写入,比EXCEL表格更快,更方便。写入前将数据编码转换成GBK格式,避免中文乱码。
调用
$title = ['id', 'md5'];
$data = [
[1,'kfbau5'],
[2,'7FSn8u'],
[3,'SzhBvL'],
[4,'M0ynsf'],
[5,'GgXyAV'],
[6,'LHooy0'],
];
$fname = sprintf("csv导出.%s.csv", date('Ymd.His')) ;
$path = createCsv($title,$data,$fname);
var_dump( $path);
定义函数,将数据写入CSV
// 写入CSV
function createCsv($title, $data, $fname)
{
$file_path = $_SERVER['DOCUMENT_ROOT'] .'/'. $fname;
$fp = fopen($file_path, 'a');
//将数据编码转换成GBK格式
//将数据格式化为CSV格式并写入到output流中
mb_convert_variables('GBK', 'UTF-8', $title);
fputcsv($fp, $title);
foreach ($data as $row) {
mb_convert_variables('GBK', 'UTF-8', $row);
fputcsv($fp, $row);
}
fclose($fp);
return $file_path;
}
导出结果
id md5 1 kfbau5 2 7FSn8u 3 SzhBvL 4 M0ynsf 5 GgXyAV 6 LHooy0