有很多关于在PHP中将HTML实体和特殊字符转换为UTF8文本的问题和文档。还有PHP文档本身,比如
我提出问题的原因是我真的没有测试用例。我正在从数据库中读取数据,它是多语言的。但唯一的保证是字符是HTML格式,我需要将它们转换为UTF-8,以一种可以被懂得这些语言的人阅读的方式。现在,我该怎么办?什么是适当的方法来净化/解码输入,使其成为纯文本?
谢谢。
htmlspecialchars_decode()
和html_entity_decode()
。然而,我找不到任何函数/解决方案清楚地描述如何将任何HTML字符和特殊实体转换为UTF-8文本。所有这些都陈述了类似于“如果你想这样做,那么就要这样做”等内容。但没有一个解决方案明确说明“为了拥有纯净的UTF-8文本,可以被人类阅读,那么就应该这样做”。我提出问题的原因是我真的没有测试用例。我正在从数据库中读取数据,它是多语言的。但唯一的保证是字符是HTML格式,我需要将它们转换为UTF-8,以一种可以被懂得这些语言的人阅读的方式。现在,我该怎么办?什么是适当的方法来净化/解码输入,使其成为纯文本?
谢谢。
更新
这里是一个更新,从评论中可以看出我没有正确地提问。我的数据库包含文本。我想将该文本(其中包含HTML实体和特殊字符)转换为UTF-8文本,以便在网页上向最终用户显示。这些文本在数据库中使用多种语言编写(如法语、阿拉伯语、英语等)。所有这些都可能包含用于特殊字符的HTML实体。那么我该如何将所有这些转换为可被理解这些语言的人读取的UTF-8文本?我希望删除这些特殊字符并将它们转换为可被人类阅读的内容。