Я пишу $xml = new DOMDocument();
и он автоматически создает <?xml version="1.0"?>
. Мне не нужно его создавать. Как мне это сделать?
Одним из решений является поиск первых «>» и strsub в индексе при первом <найденном. Но мне нравится более удобный способ сделать это.
Когда вы saveXML
, передайте корневой элемент в качестве аргумента node
. Только корневой элемент и его содержимое будут сериализованы, а не любое объявление XML, doctype, комментарии или ИП за пределами корня.
$doc->saveXML($doc->documentElement);
или, если вам нужен другой материал, но просто нет избыточной декларации:
$result= ''; foreach($document->childNodes as $node) $result.= $document->saveXML($node)."\n";