在PHP中解码的html实体

时间:2010-07-15 18:08:06

标签: php utf-8 character-encoding

我似乎完全无法绕过utf-8字符编码。

所以我将数据库中的内容导出为utf-8 xml文件。 我导入的软件对字符编码非常严格,所以我不能把所有内容都放在CDATA标签中。

有一大堆奇怪的人物,例如', - ......已经存在于数据中。

这些在xml中不起作用,需要更换(通常只有一个'引用)。

理想情况下,我想解码所有字符,然后使用htmlspecialchars($ text,ENT_COMPAT,'UTF-8',FALSE)再次对它们进行编码。但我似乎无法找到解码它们的功能。有吗? 我已经开始用str_replace()手动浏览每个实体,但它变成了比我预期的更大的工作。

任何帮助都会成为救星。 感谢

1 个答案:

答案 0 :(得分:2)

或许

html_entity_decode()?

在某些情况下,在php中的字符转换问题中,设置区域设置很重要。无关紧要,例如

setlocale(LC_CTYPE,'en_US.utf8');

但是我建议任何时候都投入到从一开始就获得编码的权利,而不是回到实体,如果可能的话,是值得的。