用户姓名这一列,有几个用户的名字中带有生僻字的都变成了“?”,大部分用户的中文名字都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 '?,?,?,?';
并没有问题的
