我的替换词库来源于一个文本文件。文本文件无论改成gbk还是utf-8格式都出现乱码。
如果把替换词库自己定义如下:
$words = array('发文说'=>'DDDDDDDDDDDDDDDDDDDd');
替换就不会出现乱码
$data['content'] = strtr($data['content'], $words);我把words变量打印出来,里面的词组都没有乱码,用函数检测,也不是utf-8格式。所以可以确认,内容和替换词组都是gbk格式的字符串。
请问如何解决这个问题?谢谢
如果把替换词库自己定义如下:
$words = array('发文说'=>'DDDDDDDDDDDDDDDDDDDd');
替换就不会出现乱码
$data['content'] = strtr($data['content'], $words);我把words变量打印出来,里面的词组都没有乱码,用函数检测,也不是utf-8格式。所以可以确认,内容和替换词组都是gbk格式的字符串。
请问如何解决这个问题?谢谢
解决方案 »
- 帮我看看php mysql修改密码的问题
- json编码的问题
- 非计算机专业,一年ASP.NET开发经验,如果从新学习PHP,要多久能跟着做项目?
- 关于static的讨论
- 索取, 索取, 索取, 这是不是与csdn的分数管理制度有关? 记得在很久以前分数有了后, 是有增无减的, 所以星星淡生的就很多
- php新手上路问几个问题,请帮忙介绍?
- 求助~
- 怎样实现form 中的一个文本框的值随一个下拉框中的值而变化?
- php session变量在下一页不能读取值的问题。急!!!!!
- 请问用php如何发送一个带附件的email?
- zend server 和PHPMyAdmin整合问题
- PHP中数据库Mysql还原时报错
$handle = fopen($data_file, "r");
$data = fread($handle, filesize($data_file));
我在网上搜索,得到答案说:但是我的字符串都是gbk呀。而且我以前也用这个函数,没出现乱码。到这里就出现乱码了,不知道为何。
问题找到了。我切割字符的时候用的是\n,而不是\r\n。这就是造成乱码的原因。感谢回答。