我的替换词库来源于一个文本文件。文本文件无论改成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插入一条记录后,10秒钟自动删除该条记录,求实现
- 求php的分割标题 并且保存到某字段中的代码
- 我发觉discuz的美工人员很差劲。。
- 请问留言版中管理员对各用户留言的回复功能以及其他用户对留言的评论功能
- php 如何得到 ajax 的返回值
- php获取address,netmask,gateway的函数是什么?
- 关于HTML标签的处理函数
- 问:怎么才能实现点击一下按钮就能转到令一个页面?
- php发邮件如何保留html的格式呢??
- 请问怎样设置cookie能使关闭浏览器后cookie就立刻失效?
- zend server 和PHPMyAdmin整合问题
- PHP中数据库Mysql还原时报错
$handle = fopen($data_file, "r");
$data = fread($handle, filesize($data_file));
我在网上搜索,得到答案说:但是我的字符串都是gbk呀。而且我以前也用这个函数,没出现乱码。到这里就出现乱码了,不知道为何。
问题找到了。我切割字符的时候用的是\n,而不是\r\n。这就是造成乱码的原因。感谢回答。