Annotation of embedaddon/php/ext/simplexml/tests/018.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: SimpleXML: iteration through subnodes and attributes
3: --SKIPIF--
4: <?php if (!extension_loaded("simplexml")) print "skip"; ?>
5: --FILE--
6: <?php
7: $xml =<<<EOF
8: <people>
9: <person name="Joe">
10: Text1
11: <child name="Ann" />
12: Text2
13: <child name="Marray" />
14: Text3
15: </person>
16: <person name="Boe">
17: <child name="Joe" />
18: <child name="Ann" />
19: </person>
20: </people>
21: EOF;
22: $xml1 =<<<EOF
23: <people>
24: <person name="Joe">
25: <child />
26: </person>
27: </people>
28: EOF;
29:
30: function traverse_xml($pad,$xml) {
31: foreach($xml->children() as $name => $node) {
32: echo $pad."<$name";
33: foreach($node->attributes() as $attr => $value) {
34: echo " $attr=\"$value\"";
35: }
36: echo ">\n";
37: traverse_xml($pad." ",$node);
38: echo $pad."</$name>\n";
39: }
40: }
41:
42: traverse_xml("",simplexml_load_string($xml));
43: echo "----------\n";
44: traverse_xml("",simplexml_load_string($xml1));
45: echo "---Done---\n";
46: ?>
47: --EXPECT--
48: <person name="Joe">
49: <child name="Ann">
50: </child>
51: <child name="Marray">
52: </child>
53: </person>
54: <person name="Boe">
55: <child name="Joe">
56: </child>
57: <child name="Ann">
58: </child>
59: </person>
60: ----------
61: <person name="Joe">
62: <child>
63: </child>
64: </person>
65: ---Done---
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>