Ну, я чувствую, что сначала должен предупредить вас, что пробел не подходит для допустимых тегов XML. Вы можете добавить <white space>STUFF</white space>
, но это будет читаться как тег <white>
. С более щадящим интерпретатором вы можете обнаружить, что он имеет истинный логический атрибут space
. Заменить \s
на -
.
С DOMDocument, чтобы читать дочерние узлы, ничего не зная о них, кроме того факта, что они являются дочерними узлами, вы должны использовать свойство с соответствующим именем childNodes
:
$doc = new DOMDocument();
$rand = rand(1,100);
$doc->loadXML('<root><i'.$rand.'><cannot-know-i /></i'.$rand.'></root>');
foreach( $doc->documentElement->childNodes as $node )
print $node->nodeName; // i$rand