首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在php中使用fputcsv将utf-8字符写入文件

在php中使用fputcsv将utf-8字符写入文件
EN

Stack Overflow用户
提问于 2014-02-24 21:01:10
回答 4查看 59.9K关注 0票数 47

我想尝试用PHP在CSV文件中写入波斯文字符,我正在使用fputcsv函数,但是如何用fputcsv将UTF-8字符写入CSV文件呢?

我的部分代码:

代码语言:javascript
复制
$df = fopen($filepath, 'w');
fputcsv($df, array($coupon->code, $discount->label));
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-02-24 21:06:43

试试这个:

代码语言:javascript
复制
$df = fopen($filepath, 'w');
fprintf($df, chr(0xEF).chr(0xBB).chr(0xBF));
fputcsv($df, array($coupon->code, $discount->label));

fprintf($df, chr(0xEF).chr(0xBB).chr(0xBF));为正确的编码写入文件头。

票数 171
EN

Stack Overflow用户

发布于 2014-10-23 20:43:36

也可以试试这个:

代码语言:javascript
复制
$df = fopen($filepath, 'w');
$array = array($coupon->code, $discount->label);
$array = array_map("utf8_decode", $array);
fputcsv($df, $array);
票数 30
EN

Stack Overflow用户

发布于 2018-08-27 15:57:35

如果您想为excel生成一个UTF-8文件,请使用以下简单解决方案:

代码语言:javascript
复制
$fp = fopen($filename, 'w');

//add BOM to fix UTF-8 in Excel 
fputs($fp, $bom =( chr(0xEF) . chr(0xBB) . chr(0xBF) ));

查看官方PHP页面上的原始答案here

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21988581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档