PHP 导出CSV格式
原生PHP 导出CSV格式文件
-
public function exportCSV(){
-
//示例数组数据
-
$new_arr = array(
-
array(
-
'gw_name' => '123',
-
'zw_name' => '345',
-
'score' => '67.6',
-
),
-
array(
-
'gw_name' => 'ABC',
-
'zw_name' => '345',
-
'score' => '67.6',
-
),
-
array(
-
'gw_name' => 'DEF',
-
'zw_name' => '345',
-
'score' => '67.6',
-
),
-
array(
-
'gw_name' => 'EFG',
-
'zw_name' => '345',
-
'score' => '67.6',
-
),
-
);
-
//处理遍历数据格式放入新的数组$res
-
foreach($new_arr as $k => $v){
-
$res['allList'][$k] = array(
-
'gw_name' => $v['gw_name'],
-
'zw_name' => $v['zw_name'],
-
'score' => $v['score'],
-
);
-
}
-
//定义表头 (表头要和上面的$res['allList']数据相对应)
-
$res['title'] = array(
-
'gw_name' => '岗位名称',
-
'zw_name' => '职位名称',
-
'score' => '分数',
-
);
-
$headerList = array(); //定义表头
-
$machineData = array(); //定义数据
-
//处理表头放入新的数组中
-
foreach ($res['title'] as $k => $v){
-
$headerList[] = $v;
-
}
-
//处理数据放入新的数组中
-
foreach ($res['allList'] as $k => $v){
-
foreach ($v as $key => $val){
-
$machineData[$k][] = $val;
-
}
-
}
-
$result = array();
-
// 打开文件资源,不存在则创建
-
$time = time();
-
$fileName = date('Ym',time()).$time;
-
//导出文件地址 ./表示当前服务器地址
-
$des_file = './Uploads/CSV/'.$fileName.'_export.csv';
-
$fp = fopen($des_file,'a');
-
// 处理头部标题
-
$header = implode(',', $headerList) . PHP_EOL;
-
// 处理内容
-
$content = '';
-
foreach ($machineData as $k => $v) {
-
$content .= implode(',', $v) . PHP_EOL;
-
}
-
// 拼接
-
$csv = $header.$content;
-
// 写入并关闭资源
-
fwrite($fp, $csv);
-
fclose($fp);
-
//把文件输出到下载
-
// $file = fopen($des_file,"r"); // 打开文件
-
// $size=filesize($des_file);
-
// Header("Content-type: application/octet-stream");
-
// Header("Accept-Ranges: bytes");
-
// Header("Accept-Length: ".$size);
-
// Header("Content-Disposition: attachment; filename=download.csv");
-
// echo fread($file,$size);
-
// fclose($file);
-
$result['status'] = 200;
-
$result['msg'] = '成功';
-
//打印csv文件的地址
-
$result['url'] = 'https://************/Uploads/CSV/'.$fileName.'_export.csv';
-
$this->ajaxReturn($result,'JSON');
-
}
亲测有效~ 如有不好用的下方评论改正
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgfbkhj
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01