博主辛苦了,我要打赏银两给博主,犒劳犒劳站长。
【摘要】本文博客中写过几篇关于 PHP 实现 csv 文件上传(导入)、下载(导出)的相关文章,但是这几篇文章中只提及到了如何解决 csv 导入过程中出现中文乱码的问题,而本文要解决一下 php 实现 csv 导出过程中出现中文乱码的解决方法。
之前写过的有关 csv 文件操作的文章如下:
http://www.mafutian.net/71.htmlhttp://www.mafutian.net/161.htmlhttp://www.mafutian.net/197.html直接给出完整的解决办法:
$data = array(
0 => array(
'id' => 'id',
'name' => 'name',
'age' => 'age',
'sex' => 'sex'
),
1 => array(
'id' => 1,
'name' => '马富天',
'age' => '18',
'sex' => '男'
)
);
// 已读的方式打开 1.csv 文件,若 1.csv 不存在,则尝试创建它
$handle = fopen('1.csv','w');
foreach($data as $k => $fields)
{
// 解决办法 -- Begin
foreach($fields as $key => $value)
{
// 输出的时候将 utf-8 编码转换成 gbk 编码即可,这里与 csv 导入过程是恰恰好相反的过程,导入是将 gbk 编码格式转成 utf-8 格式
$fields[$key] = iconv("UTF-8","gbk",$value);
}
// 解决办法 -- End
fputcsv($handle, $fields);
}
fclose($handle);
将以上的代码直接拷贝到 php 文件中可直接执行即可,如果将中间解决办法那段去掉,是会出现中文乱码的。执行结果如下图所示:
版权归 马富天PHP博客 所有
本文标题:《PHP 语言中下载或导出 csv 文件时出现中文乱码的解决办法》
本文链接地址:http://www.mafutian.net/323.html
转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^
顶1
踩0
评论审核未开启 |