我正在寻找一种从xml文件删除/跳过非utf8角色的方法。
我正在使用simplexml_load_string(),但是当文件具有非utf8字符时,我将收到错误“解析器错误:CharRef:无效的十六进制值”,并进行编码,如下所示:
Q7fzÕ6,¯å1òw~Ò`H-7%¨§ÃU³^Ôàƒ³‡Îá_s…“w²žrâºæºçYF#K‰àa¥²o8Îk쎻qíNž‚ËÂUeJvgXêõ»'[Hw®Èl[-®Ps§æŠ§£gáRÓ„Å2Ì$ŽŽŠŽÆÁœ˜.E~Ñ°@=
而且我无法从该xml中保存信息,我正在尝试从Web / stackoverflow中获取许多solutin,但没人在帮助我。
我正在尝试使用preg_replace等。
谢谢!
评论的答案:
尝试在此文本中删除/转义与号或将其包装在CDATA块中
所以我把
simplexml_load_string($string)
这个放在call函数之前
$string = str_replace('&', ' ', $string);
。
现在可以正常工作了,没有&字符串,所以simplexml_load_string()可以解析而不会出现错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句