kla*_*ner 6 php xml xpath dom html-entities
我在PHP中使用DOMDocument和DOMXPath来查找HTML文档中的元素.此文档包含HTML实体,例如 我希望这些实体保留在XPath输出中.
$doc = new DOMDocument();
$doc->loadHTML('<html><head></head><body> Test</body></html>');
$xpath = new DOMXPath($doc);
$nodes = $xpath->query('//body');
foreach($nodes as $node) {
echo $node->textContent;
}
Run Code Online (Sandbox Code Playgroud)
此代码生成以下输出(UTF-8):
[space]Test
Run Code Online (Sandbox Code Playgroud)
但我想有这个:
Test
Run Code Online (Sandbox Code Playgroud)
也许它与PHP在内部使用的LibXML有关,但我找不到任何保留HTML实体的函数.
你有好主意吗?
XPath 始终看到 XML 文档的表示形式,其中实体引用已被扩展。防止这种情况的唯一方法是预处理 XML 文档,用不会扩展的内容替换实体引用,例如更改
为\xc2\xa7nbsp;
.
归档时间: |
|
查看次数: |
1049 次 |
最近记录: |