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 5 >= 5.2.0, PHP 7, PHP 8)
XMLReader::readOuterXml — Получает XML из текущего узла, включая сам узел
Метод читает содержимое текущего узла, включая сам узел.
У этой функции нет параметров.
Метод возвращает содержимое текущего узла, включая сам узел как строку. Метод возвращает пустую строку, если возникла ошибка.
Эта функция доступна только если 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.