<?php
$xmlstr = '<za-lord xmlns:a="http://example.org/ns" xmlns:t="http://example.org/test">
<orderid>dresden1234</orderid>
<customer>toot-toot</customer>
<pizza>
<sauce>marinara</sauce>
<crust>thin</crust>
<toppings>
<cheese>extra</cheese>
<veg>
<a:onions>yes</a:onions>
<a:peppers>extra</a:peppers>
<a:olives>no</a:olives>
</veg>
<meat>
<t:groundbeef>yes</t:groundbeef>
<a:ham>no</a:ham>
<sausage>no</sausage>
</meat>
</toppings>
</pizza>
</za-lord> ';
function list_children($node, $names) {
$children = false;
foreach ($names as $name) {
if (count($node->children($name))) {
$children = true;
foreach ($node->children($name) as $child) {
list_children($child, $names);
}
}
}
if (!$children) {
echo $node->getName() . " = $node\n";
}
}
$xml = new SimpleXMLElement($xmlstr);
list_children($xml, array_merge(array(''), $xml->getNamespaces(true)));
- Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.12
- orderid = dresden1234
customer = toot-toot
sauce = marinara
crust = thin
cheese = extra
onions = yes
peppers = extra
olives = no
sausage = no
ham = no
groundbeef = yes
preferences:
112.85 ms | 408 KiB | 5 Q