--TEST-- SPL: SimpleXMLIterator and getChildren() --EXTENSIONS-- simplexml libxml --FILE-- Plain text. Bla bla 1. Here we have some text data. And here some more. Wow once again. Bla bla 2. Foo Bar EOF; $sxe = simplexml_load_string($xml, 'SimpleXMLIterator'); foreach($sxe->getChildren() as $name => $data) { var_dump($name); var_dump(get_class($data)); var_dump(trim($data)); } echo "===RESET===\n"; for ($sxe->rewind(); $sxe->valid(); $sxe->next()) { var_dump($sxe->hasChildren()); var_dump(trim($sxe->key())); var_dump(trim($sxe->current())); foreach($sxe->getChildren() as $name => $data) { var_dump($name); var_dump(get_class($data)); var_dump(trim($data)); } } ?> --EXPECTF-- Warning: foreach() argument must be of type array|object, null given in %ssxe_003.php on line %d ===RESET=== bool(true) string(5) "elem1" string(10) "Bla bla 1." string(5) "elem2" string(17) "SimpleXMLIterator" string(28) "Here we have some text data." bool(true) string(6) "elem11" string(10) "Bla bla 2." string(7) "elem111" string(17) "SimpleXMLIterator" string(7) "Foo Bar"