代码也没什么毛病. ubuntu,terminal编码改为gb2312,没你说的问题
kfPzjS.jpg
就是
小,姐:d0a1 bde3
〗:a1bd
秀:d0e3
这是gbk编码不能正确判断每个汉字的开始结束的问题。
建议把网页先转成utf8,然后你php源代码也用utf8来写,就不会有此类问题了。 这啥网站啊==
hdown 发表于 2019-2-22 15:32
就是
小,姐:d0a1 bde3
〗:a1bd
哥你太牛了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
二个字——服!
hdown 发表于 2019-2-22 15:32
就是
小,姐:d0a1 bde3
〗:a1bd
按照你解读的原理,终于解决了。
如果需要最终内容为gb2312编码的话,先把获取到的内容全部转成UTF-8编码,再进行过滤替换,最终再次进行编码转换为gb2312,就没这个灵异般的事情了。
大佬牛!
[*]
[*]复制代码
testuserll 发表于 2019-2-22 13:55
为啥我执行就不替换啊,Windows 下用phpstudy试的。
因为楼主是gb2312的php源码,你应该是utf-8的。所以你替换不到
gftflb 发表于 2019-2-22 16:55
按照你解读的原理,终于解决了。
如果需要最终内容为gb2312编码的话,先把获取到的内容全部转成UTF-8编 ...
1、不要滥用@,我从业这么多年,没有看到过哪个同事写代码用到@的。除了临时修复一些兼容性场景而不考虑可维护性。
2、如无必要,不要引入额外的依赖。就是说不要用mbstring扩展来转码,iconv自带函数用起来没什么问题。
3、始终使用utf8编码来写php源码。
第二点只是一个好习惯,不是什么必须遵守的。
hdown 发表于 2019-2-22 17:23
1、不要滥用@,我从业这么多年,没有看到过哪个同事写代码用到@的。除了临时修复一些兼容性场景而不考虑 ...
多谢指点!
因为没系统学习过,我都是通过google东拼西凑的代码,有需求就拼揍,看起来能用就当作生产工具来用了。
经常为了一个小问题花上整天时间Google不断复制粘贴然后调试,有时候你们内行的一句话、一个指点真的非常可贵和难得。真心的。
再次感谢大佬!这论坛能遇上你真庆幸!
页:
1
[2]