当获取在nodeValue中具有实体的DOMNode对象的nodeValue(即& gt;)时,它将实体转换为它的可打印字符(即>)
有没有人知道如何让它成为一个实体,当它转换为意想不到的东西时,它真的会混淆字符串比较。
以下代码再现了您将注意到转储的长度为3时应该为6的问题。
<?php
$xml='<?xml version="1.0"?>
<root>
<element>></element>
</root>';
$a=new DOMDocument();
$a->loadXML($xml);
var_dump($a->childNodes->item(0)->nodeValue);
答案 0 :(得分:5)
loadXML()
采用options
参数,其中一个选项为LIBXML_NOENT,可以将实体转换为其表示形式,因此默认情况下loadXML()
不应该这样做。但是,根据this bug report