2つのDOMNodeListがあります
$textNodes = $xpath->query('//text()');
と
$titleNodes = $xpath->query('//@title');
foreach
それらをDOMNodeListsにマージして、ループで使用できるようにするにはどうすればよいですか?
XPathは、|
2つのノードセットを組み合わせるための演算子をサポートしています。
$textNodes = $xpath->query('//text() | //@title');
この簡単な例を想像してみてください:
$xml = '<?xml version="1.0"?>
<person>
<name>joe</name>
<age>99</age>
</person>';
$doc = new DOMDocument();
$doc->loadXml($xml);
$selector = new DOMXPath($doc);
$nodes = $selector->query('//name | //age');
foreach($nodes as $node) {
echo $node->nodeName, PHP_EOL;
}