防止PHP DOM解码
PHPDOM自动解码。例如防止PHP DOM解码,php,xml,dom,encoding,Php,Xml,Dom,Encoding,PHPDOM自动解码。例如和#42在创建DomeElement时被解码。有没有办法防止这种情况。一种解决方案是对文本进行预处理,后置词进行后处理,但这更像是一种黑客行为 示例代码: $domDoc = new \DOMDocument(); $domEl = $domDoc->createElement('foo', 'text with * in it'); $domDoc->appendChild($domEl); echo $domDoc->saveXML
和#42代码>在创建DomeElement时被解码。有没有办法防止这种情况。一种解决方案是对文本进行预处理,后置词进行后处理,但这更像是一种黑客行为
示例代码:
$domDoc = new \DOMDocument();
$domEl = $domDoc->createElement('foo', 'text with * in it');
$domDoc->appendChild($domEl);
echo $domDoc->saveXML();
DOMDocument,或者更确切地说是libxml,有一个布尔标志替换项:
专有的。是否替换实体。此属性不是DOM规范的一部分,特定于libxml
但是,这不适用于ASCII实体,因为它们是预定义的。PHP5.1.4有一个错误,标记为“非错误”,因为
行为是正确的-这些是预定义的实体,替代项对它们的行为没有影响。有关更多信息,请参见规格:
也看到
请注意,在节省时间时,libxml2会在必要时强制转换预定义的实体,以防止格式良好的问题,并将透明地用字符替换这些实体(即,在输入中查找实体引用元素时,它不会在DOM树中生成实体引用元素,也不会调用reference()SAX回调)
DOMDocument,或者更确切地说是libxml,有一个布尔标志替换项:
专有的。是否替换实体。此属性不是DOM规范的一部分,特定于libxml
但是,这不适用于ASCII实体,因为它们是预定义的。PHP5.1.4有一个错误,标记为“非错误”,因为
行为是正确的-这些是预定义的实体,替代项对它们的行为没有影响。有关更多信息,请参见规格:
也看到
请注意,在节省时间时,libxml2会在必要时强制转换预定义的实体,以防止格式良好的问题,并将透明地用字符替换这些实体(即,在输入中查找实体引用元素时,它不会在DOM树中生成实体引用元素,也不会调用reference()SAX回调)
我认为这更多的是一种xml思维,而不是真正的PHP思维。尝试用&;替换&;相反,您有*代码>我认为这更多的是一种xml思维,而不是真正的PHP思维。尝试用&;替换&;相反,您有*代码>