Как получить все дочернии узлы в виде текста?

Balkon

Новичок
Как получить все дочернии узлы в виде текста?

есть xml

<root>
<mynode>
<mytag1/>
<mytag2/>
<mytag3/>
</mynode>
</root>

Есть $node == <mynode>

как мне получить <mytag1/><mytag2/><mytag3/> в виде строки?
Тегов может быть много разных вложенных.

Задача получить все узлы, которые являются дочками моего выбранного узла.
 

voituk

прозревший
Balkon
Лень искать - пользуйся поиском.
Точно помню что сам спрашивал подобный вопрос около года назад.
 

Balkon

Новичок
Это первое что я сделал - но кроме этого топика ничего не находиться =)

-~{}~ 01.09.06 10:48:

Сделал субстрингом. Фик знает насколько это идеологически верно... но работает

$value = $dom->SaveXml($node);
$value = substr($value, strpos($value, ">")+1);
$value = substr($value, 0, -9);
 

sayber

Новичок
Автор оригинала: Balkon
у меня используется не SimpleXml, а DOM
:)

PHP:
$dom = new DOMDocument;
$dom->loadXML($string);
$xpath = new DOMXPath($dom);
$entries = $xpath->query("//root/mynode/*");
	foreach($entries as $node) {
	echo($node->ownerDocument->saveXML($node));
	}
 
Сверху