public function publicExportCsv($arr_excelHeaderinfo,$arr,$fileName){
header('Access-Control-Allow-Origin:*');//允许所有来源访问
$headArr = array();
$fieldArr = array();
foreach ($arr_excelHeaderinfo as $k => $v) {
$headArr[]=$v[1];
$fieldArr[]=$v[2];
}
$data = array();
foreach ($arr as $key => $val) {
foreach ($fieldArr as $dk => $dv) {
if (in_array($dv, array('parent_order_sn','order_sn','add_time','pay_time','shipping_time','invoice_no','mobile','goods_sn','goods_sku_name','id_card_number','sku_code','goods_model','third_goods_number'))) {
$data[$key][] = "\xEF\xBB\xBF".$val[$dv];
}else{
$data[$key][] = $val[$dv];
}
}
}
// $data=array(array("1","2","3"),array("11","22","33"),array("111","222","333")); //模拟表格数据
/**导出api**/
ini_set('memory_limit','1024M'); //设置程序运行的内存
ini_set('max_execution_time',0); //设置程序的执行时间,0为无上限
ob_end_clean(); //清除内存
ob_start();
header("Content-Type: text/csv");
header("Content-Disposition:filename=".$fileName.'.csv');
$fp=fopen('php://output','w');
fwrite($fp, chr(0xEF).chr(0xBB).chr(0xBF));
fputcsv($fp,$headArr);
$index = 0;
foreach ($data as $item) {
if($index==1000){ //每次写入1000条数据清除内存
$index=0;
ob_flush();//清除内存
flush();
}
$index++;
fputcsv($fp,$item);
}
ob_flush();
flush();
ob_end_clean();
exit();
}