Annotation of embedaddon/php/ext/simplexml/tests/sxe_003.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: SPL: SimpleXMLIterator and getChildren()
! 3: --SKIPIF--
! 4: <?php
! 5: if (!extension_loaded('simplexml')) print 'skip';
! 6: if (!extension_loaded("libxml")) print "skip LibXML not present";
! 7: ?>
! 8: --FILE--
! 9: <?php
! 10:
! 11: $xml =<<<EOF
! 12: <?xml version='1.0'?>
! 13: <!DOCTYPE sxe SYSTEM "notfound.dtd">
! 14: <sxe id="elem1">
! 15: Plain text.
! 16: <elem1 attr1='first'>
! 17: Bla bla 1.
! 18: <!-- comment -->
! 19: <elem2>
! 20: Here we have some text data.
! 21: <elem3>
! 22: And here some more.
! 23: <elem4>
! 24: Wow once again.
! 25: </elem4>
! 26: </elem3>
! 27: </elem2>
! 28: </elem1>
! 29: <elem11 attr2='second'>
! 30: Bla bla 2.
! 31: <elem111>
! 32: Foo Bar
! 33: </elem111>
! 34: </elem11>
! 35: </sxe>
! 36: EOF;
! 37:
! 38: $sxe = simplexml_load_string((binary)$xml, 'SimpleXMLIterator');
! 39:
! 40: foreach($sxe->getChildren() as $name => $data) {
! 41: var_dump($name);
! 42: var_dump(get_class($data));
! 43: var_dump(trim($data));
! 44: }
! 45:
! 46: echo "===RESET===\n";
! 47:
! 48: for ($sxe->rewind(); $sxe->valid(); $sxe->next()) {
! 49: var_dump($sxe->hasChildren());
! 50: var_dump(trim($sxe->key()));
! 51: var_dump(trim($sxe->current()));
! 52: foreach($sxe->getChildren() as $name => $data) {
! 53: var_dump($name);
! 54: var_dump(get_class($data));
! 55: var_dump(trim($data));
! 56: }
! 57: }
! 58:
! 59: ?>
! 60: ===DONE===
! 61: --EXPECTF--
! 62:
! 63: Warning: Invalid argument supplied for foreach() in %ssxe_003.php on line %d
! 64: ===RESET===
! 65: bool(true)
! 66: string(5) "elem1"
! 67: string(10) "Bla bla 1."
! 68: string(5) "elem2"
! 69: string(17) "SimpleXMLIterator"
! 70: string(28) "Here we have some text data."
! 71: bool(true)
! 72: string(6) "elem11"
! 73: string(10) "Bla bla 2."
! 74: string(7) "elem111"
! 75: string(17) "SimpleXMLIterator"
! 76: string(7) "Foo Bar"
! 77: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>