我在 RSS 中显示的数据上使用 htmlentities,并且我有 unicode 字符,因此它们显示实体,例如http://feedvalidator.org/Á
等服务显示为无效。
如何将此实体添加到 xml(例如使用命名空间)或者我应该使用不同的函数来转义字符,例如& < >
?
我在 RSS 中显示的数据上使用 htmlentities,并且我有 unicode 字符,因此它们显示实体,例如http://feedvalidator.org/Á
等服务显示为无效。
如何将此实体添加到 xml(例如使用命名空间)或者我应该使用不同的函数来转义字符,例如& < >
?
这是在 php 5.3.3 中工作的函数
function encode($string) {
$result = '';
foreach (str_split(utf8_decode(htmlspecialchars($string))) as $char) {
$num = ord($char);
if ($num > 127) {
$result .= '&#' . $num . ';';
} else {
$result .= $char;
}
}
return $result;
}
用于htmlspecialchars
转义 XML 中具有特殊含义的字符。
对其他字符使用正确的字符编码。
(略读文档htmlentities
建议ENT_XML1
如果您不打算使用正确的字符编码,您可以传递并获取与 XML 兼容的数字实体)。