SimpleXMLElement->children()

(no version information, might be only in CVS)

SimpleXMLElement->children() --  Finds children of given node

Description

class SimpleXMLElement {

SimpleXMLElement children ( [string ns [, bool is_prefix]] )

}

This method finds the children of the element of which it is a member. The result follows normal iteration rules.

Note: SimpleXML has made a rule of adding iterative properties to most methods. They cannot be viewed using var_dump() or anything else which can examine objects.

Example 1. Traversing a children() pseudo-array

<?php
$xml
= new SimpleXMLElement(
'<person>
<child role="son">
  <child role="daughter"/>
</child>
<child role="daughter">
  <child role="son">
   <child role="son"/>
  </child>
</child>
</person>'
);

foreach (
$xml->children() as $second_gen) {
    echo
' The person begot a ' . $second_gen['role'];

    foreach (
$second_gen->children() as $third_gen) {
        echo
' who begot a ' . $third_gen['role'] . ';';
    
        foreach (
$third_gen->children() as $fourth_gen) {
            echo
' and that ' . $third_gen['role'] .
                
' begot a ' . $fourth_gen['role'];
        }
    }
}
?>

This script will output:

The person begot a son who begot a daughter; The person
begot a daughter who begot a son; and that son begot a son