您的位置:首页 > 编程语言 > PHP开发

PHP导出CSV案列

2015-10-14 17:20 627 查看
$data = array();
$data = $app->getStatisApp(2,$username,$whereDepartment,$status,$level,$time);
$str = mb_convert_encoding ("姓名,一级部门,所在部门,直属上级,入职时间\n", 'GBK', 'UTF8' );
$filename = "转正申请表审核进度统计";
$filename = mb_convert_encoding ( $filename, 'GBK', 'UTF8' );
ob_end_clean ();
header ( "HTTP/1.1 200 OK" );
header ( 'Content-Encoding: none' );
header ( 'Content-type:text/csv' );
header ( "Content-Disposition:attachment;filename={$filename}.csv" );
header ( 'Cache-Control:must-revalidate,post-check=0,pre-check=0,max-age=31536000' );
header ( 'Expires:0' );
header ( 'Pragma:public' );
foreach ( $data as $value ) {
$str .= mb_convert_encoding ( "{$value['truename']},{$value['oneDepartment']},{$value['twoDepartment']},{$value['leaderTruename']},{$value['entry_time']},{$value['formal_time']}\n", 'GBK', 'UTF8');
}
echo $str;

解决内容中含有''','"'字符
foreach ($data as $row) {
$str_arr = array();
foreach ($row as $column) {
$column = mb_convert_encoding($column,'GBK', 'UTF8');
$str_arr[] = '"' . str_replace('"', '""', $column) . '"';
}
$str.=implode(',', $str_arr) . PHP_EOL;
}

原文:/article/5989553.html
当内容中含有',' '"'的处理方式
/**
* 生成默认以逗号分隔的CSV文件
* 解决:内容中包含逗号(,)、双引号("")
* @author zf
* @version 2012-11-14
*/
header("Content-Type: application/vnd.ms-excel; charset=GB2312");
header("Content-Disposition: attachment;filename=CSV数据.csv ");
$rs = array(
array('aa', "I'm li lei", '"boy"', '¥122,300.00'),
array('cc', 'I\'m han mei', '"gile"', '¥122,500.00'),
);
$str = '';
foreach ($rs as $row) {
$str_arr = array();
foreach ($row as $column) {
$str_arr[] = '"' . str_replace('"', '""', $column) . '"';
}
$str.=implode(',', $str_arr) . PHP_EOL;
}
echo $str;
本文出自 “欧阳俊” 博客,请务必保留此出处http://ouyangjun.blog.51cto.com/10284323/1702903
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: