php – 有谁知道如何从字符串中删除hex A0?
发布时间:2020-12-13 17:21:51 所属栏目:PHP教程 来源:网络整理
导读:我有以下字符串: Hello. ? Hello. 如果你在十六进制编辑器中查看字符串,它看起来像这样: 48 65 6C 6C 6F 2E 20 A0 20 20 48 65 6C 6C 6F 2E 注意中间的A0. (这是不间断的空格字符). A0打破了我正在使用的一些JavaScript,因此我希望在PHP脚本预处理字符串时
我有以下字符串:
如果你在十六进制编辑器中查看字符串,它看起来像这样:
注意中间的A0. (这是不间断的空格字符). A0打破了我正在使用的一些JavaScript,因此我希望在PHP脚本预处理字符串时将其删除. 如果我使用以下代码: $text = preg_replace("/xA0/"," ",$text); A0被替换为00,这也是一个麻烦的角色. 你们有谁知道如何摆脱这个麻烦的A0角色? 谢谢. 编辑:我使用的是Windows-1252,无法切换到UTF-8.如果您使用的是UTF-8,这不会有问题…… 解决方法
简单
$string = str_replace(chr(160),$string); 简单测试 $string = "48656C6C6F2E20A0202048656C6C6F2E" ; ^----------------------- 0A //Rebuild String $string = pack("H*",$string); //Replace 0A Charater $string = str_replace(chr(160),$string); //Send Output var_dump($string,bin2hex($string)); 产量 string 'Hello. Hello.' (length=16) string '48656c6c6f2e2020202048656c6c6f2e' (length=32) ^---------------------- 0A Replaced with 02 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |