首先是导出的函数
// 导出csv $filter: 表头 $list :数据 $name :导出的csv文件名
public function export_csv($filter, $list, $name = "数据") {
header("Content-type: text/html; charset=utf-8");
header("Content-Type:text/comma-separated-values;charset=UTF-8");
if (!$filter || !$list) {
return false;
}
/* 输入到CSV文件 */
$html = "\xEF\xBB\xBF";
foreach ($filter as $key => $value) {
$value = str_replace(",", ",",$value);
$html .= $value . "\t,";
}
$html .= "\n";
foreach ($list as $k => $v) {
foreach ($filter as $k2 => $v2) {
$v[$k2] = str_replace(",", ",",$v[$k2]);
$html .= $v[$k2] . "\t,";
}
$html .= "\n";
}
$html = iconv("UTF-8", "GB2312//IGNORE", $html);
/* 输出CSV文件 */
header("Content-type:text/csv;charset=UTF-8");
header("Content-Disposition:attachment; filename=".$name.".csv");
return $html;
}
然后就可以直接调用了
// 要导出的数据
$export_list = [
[
'order_no' => 1111,
'price' => 123
],
[
'order_no' => 11114,
'price' => 123
],
];
// 数组的键对应哪个标题
$filter = [
'order_no' => '订单号',
'price' => '订单金额',
];
$detail_export = $this->export_csv($filter, $export_list);
echo $detail_export;
die;
然后就可以导出了
这是用云开发开发的小程序,可以参考一下