summaryrefslogtreecommitdiff
path: root/ext/simplexml/tests/017.phpt
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-03-14 05:42:27 +0000
committer <>2013-04-03 16:25:08 +0000
commitc4dd7a1a684490673e25aaf4fabec5df138854c4 (patch)
tree4d57c44caae4480efff02b90b9be86f44bf25409 /ext/simplexml/tests/017.phpt
downloadphp2-master.tar.gz
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/simplexml/tests/017.phpt')
-rw-r--r--ext/simplexml/tests/017.phpt86
1 files changed, 86 insertions, 0 deletions
diff --git a/ext/simplexml/tests/017.phpt b/ext/simplexml/tests/017.phpt
new file mode 100644
index 0000000..776b00c
--- /dev/null
+++ b/ext/simplexml/tests/017.phpt
@@ -0,0 +1,86 @@
+--TEST--
+SimpleXML: iteration through subnodes
+--SKIPIF--
+<?php if (!extension_loaded("simplexml")) print "skip"; ?>
+--FILE--
+<?php
+$xml =<<<EOF
+<people>
+ <person name="Joe">
+ <child name="Ann" />
+ <child name="Marray" />
+ </person>
+ <person name="Boe">
+ <child name="Joe" />
+ <child name="Ann" />
+ </person>
+</people>
+EOF;
+$xml1 =<<<EOF
+<people>
+ <person name="Joe">
+ <child name="Ann" />
+ </person>
+</people>
+EOF;
+
+function print_xml($xml) {
+ foreach($xml->children() as $person) {
+ echo "person: ".$person['name']."\n";
+ foreach($person->children() as $child) {
+ echo " child: ".$child['name']."\n";
+ }
+ }
+}
+
+function print_xml2($xml) {
+ $persons = 2;
+ for ($i=0;$i<$persons;$i++) {
+ echo "person: ".$xml->person[$i]['name']."\n";
+ $children = 2;
+ for ($j=0;$j<$children;$j++) {
+ echo " child: ".$xml->person[$i]->child[$j]['name']."\n";
+ }
+ }
+}
+
+echo "---11---\n";
+print_xml(simplexml_load_string($xml));
+echo "---12---\n";
+print_xml(simplexml_load_string($xml1));
+echo "---21---\n";
+print_xml2(simplexml_load_string($xml));
+echo "---22---\n";
+print_xml2(simplexml_load_string($xml1));
+?>
+===DONE===
+--EXPECTF--
+---11---
+person: Joe
+ child: Ann
+ child: Marray
+person: Boe
+ child: Joe
+ child: Ann
+---12---
+person: Joe
+ child: Ann
+---21---
+person: Joe
+ child: Ann
+ child: Marray
+person: Boe
+ child: Joe
+ child: Ann
+---22---
+person: Joe
+ child: Ann
+ child:
+person:
+
+Notice: Trying to get property of non-object in %s017.php on line %d
+ child:
+
+Notice: Trying to get property of non-object in %s017.php on line %d
+ child:
+===DONE===