gpt4 book ai didi

php - 编码奇数 HTML 实体 '&lstroke;'

转载 作者:数据小太阳 更新时间:2023-10-29 02:40:08 26 4
gpt4 key购买 nike

我遇到一些奇怪的 HTML 实体问题,这些实体来 self 必须在 PHP 5.6 中解析的 XML 文件。

一些 HTML 实体是:

&lstroke;
n´
a&hook;
e&hook;

XML 来自 CAB Abstracts ( http://www.cabi.org/publishing-products/online-information-resources/cab-abstracts/ ),它的标题是:

<?xml version="1.0" encoding="ISO-8859-1"?>

但是,我尝试了几种编码系统都没有成功。此外,我尝试过直接在 HTML 文件中使用它们,使用 html_entity_decode 从 PHP 5.6 编写它们,如下所示:

$strings = array('&Sacute;wia&hook;tek', 'Kie&lstroke;kiewicz', 'Zagdan&acute;ska', 'Mie&hook;tkiewski');

foreach ($strings as $s) {
foreach (array(
'ISO-8859-1', 'ISO-8859-5', 'ISO-8859-15', 'UTF-8',
'cp866', 'cp1251', 'cp1252', 'KOI8-R', 'BIG5', 'GB2312',
'BIG5-HKSCS', 'Shift_JIS', 'EUC-JP', 'MacRoman', '') as $l) {
print $l . ' ==> ';
print html_entity_decode($s, ENT_COMPAT | ENT_QUOTES | ENT_XML1 | ENT_XHTML | ENT_HTML5, $l) . '<br>';
}
}

没有任何效果!!

我想避免任何类型的解决方案,包括解析 XML 文件以正确的 UTF-8 字符替换这些实体。我无法预见什么时候会包含这些奇怪的 HTML 实体,并且文件相对较大。

字符串应该如下所示:

Świątek
Kiełkiewicz
Zagdańska
Miętkiewski

所以,问题是:

如何在 PHP 中将这些奇怪的 HTML 实体解码为 UTF-8?

最佳答案

看起来这是一个自己的标准来编码波兰语字母。不会有内置功能。 ĄąĘę 的官方变音符号被称为 ogonek(波兰语和英语) . ´ 用于间距变体,在此上下文中应使用组合变体。

我认为最好的选择是以 UTF-8 对输出进行编码并对所有这些特殊字符使用 strtr()。您不必解析 XML,您可以将其视为纯文本。

关于php - 编码奇数 HTML 实体 '&lstroke;',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30100250/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com