PHP 中的 simpleXML 和重音字符

发布于 2024-08-08 07:30:29 字数 200 浏览 5 评论 0原文

我编写了一个使用 ISO-8859-15 编码的 XML 文件,提要中的大部分数据都通过 htmlspecialchars() 运行。

然后,我使用 simplexml_load_string() 检索 XML 文件的内容以在我的脚本中使用。但是,如果我有任何特殊字符(即:é á ó),它会显示为“é à à”。如何

让我的脚本显示正确的特殊重音字符?

I have written an XML file which is using the ISO-8859-15 encoding and most of the data within the feed is ran through htmlspecialchars().

I am then using simplyxml_load_string() to retrieve the contents of the XML file to use in my script. However, if I have any special characters (ie: é á ó) it comes out as "é á ó". The

How can I get my script to display the proper special accented characters?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

李不 2024-08-15 07:30:30

您可能在输出中使用与 XML 数据实际编码不同的字符编码。

根据您的描述,您的 XML 数据使用 UTF-8 编码,但您的输出使用 ISO 8859-15。因为 UTF-8 将字符 é (U+00E9) 编码为 0xC3A9,并且在 ISO 8859 中分别表示两个字符 à© - 15.

因此,您也可以使用 UTF-8 进行输出。或者使用 mb_convert_encoding 将数据从 UTF-8 转换为 ISO 8859-15。

You’re probably using a different character encoding for you output than the XML data is actually encoded.

According to your description, your XML data encoded with UTF-8 but your output is using ISO 8859-15. Because UTF-8 encodes the character é (U+00E9) with 0xC3A9 and that represents the two characters à and © respectively in ISO 8859-15.

So you either use UTF-8 for your output as well. Or you convert the data from UTF-8 to ISO 8859-15 using mb_convert_encoding.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文