Rumah > pembangunan bahagian belakang > tutorial php > csv导出姓名生僻字变问号

csv导出姓名生僻字变问号

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-23 13:37:26
asal
2741 orang telah melayarinya

csv导出的数据
用户姓名这一列,有几个用户的名字中带有生僻字的都变成了“?”,大部分用户的中文名字都ok,
导之前已经iconv("UTF-8","GBK",$username);但是对生僻字无效果。
生僻字如“?”,“?”,“?”,“?”


回复讨论(解决方案)

“?”,“?”,“?”,“?” 既然已收入 GBK 中,就不算生僻字了。
辞海中有十多万字,GBK 才收录了两万多点

应该是你在某处指定了字符集为 GB2312 了吧

估?是使用了其他字符集?致。

csv导出的数据
用户姓名这一列,有几个用户的名字中带有生僻字的都变成了“?”,大部分用户的中文名字都ok,
导之前已经iconv("UTF-8","GBK",$d->realname);但是对生僻字无效果。
生僻字如“?”,“?”,“?”,“?”

foreach($datas as $d)
{
$d->realname=iconv("UTF-8","GBK",$d->realname);
}
$contents = View::make('user.info_csv')->with(compact('datas'));
$response = Response::make($contents, 200);
$response->header('Content-Type', 'text/csv;charset=gb2312');
$response->header('Content-Disposition', 'attachment; filename="用户信息.csv"');
return $response;

找到问题了,mac机导出遇到生僻字就变成问号了,windows下导出正常。

不知道你的那些类是怎么写的,简单的测试一下

header("Content-type: text/csv;charset=gb2312");header("Content-Disposition: attachment; filename=用户信息.csv");echo '"?","?","?","?"';
Salin selepas log masuk

并没有问题的

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan