Please note that empty tags like <span></span> will be automatically converted to the short notation <span />. This could cause trouble in some cases.
PHP - Manual: XMLReader::readOuterXml
2024-11-14
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
XMLReader::readOuterXml — Retrieve XML from current node, including itself
Reads the contents of the current node, including the node itself.
此函数没有参数。
Returns the contents of current node, including itself, as a string. Empty string on failure.
此函数仅在 PHP 与 libxml 20620 或以上版本编译时可用。
Please note that empty tags like <span></span> will be automatically converted to the short notation <span />. This could cause trouble in some cases.
Be aware that when you extract a piece of XML from a larger XML document using the readOuterXML() function, it tries to determine the namespaces (as defined in the original XML document) that apply to the new piece, and inserts them into the appropriate tags as xmlns attributes. This can be disconcerting, but it should be a benign alteration in most cases, and I understand that it causes the new chunk of XML to be correctly formatted so it is valid in it's own right.
As far as I'm aware it's not possible to change this behaviour.
官方地址:https://www.php.net/manual/en/xmlreader.readouterxml.php