summaryrefslogtreecommitdiff
path: root/ext/simplexml/tests/007.phpt
blob: 065e794c481a2e6effc3bf15f7427f9963e1edd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
--TEST--
SimpleXML: Attributes
--SKIPIF--
<?php if (!extension_loaded("simplexml")) print "skip"; ?>
--FILE--
<?php

$xml =<<<EOF
<?xml version='1.0'?>
<!DOCTYPE sxe SYSTEM "notfound.dtd">
<sxe id="elem1">
 <elem1 attr1='first'>
  <!-- comment -->
  <elem2>
   <elem3>
    <elem4>
     <?test processing instruction ?>
    </elem4>
   </elem3>
  </elem2>
 </elem1>
</sxe>
EOF;

$sxe = simplexml_load_string($xml);

echo "===Property===\n";
var_dump($sxe->elem1);
echo "===Array===\n";
var_dump($sxe['id']);
var_dump($sxe->elem1['attr1']);
echo "===Set===\n";
$sxe['id'] = "Changed1";
var_dump($sxe['id']);
$sxe->elem1['attr1'] = 12;
var_dump($sxe->elem1['attr1']);
echo "===Unset===\n";
unset($sxe['id']);
var_dump($sxe['id']);
unset($sxe->elem1['attr1']);
var_dump($sxe->elem1['attr1']);
echo "===Misc.===\n";
$a = 4;
var_dump($a);
$dummy = $sxe->elem1[$a];
var_dump($a);
?>
===Done===
--EXPECTF--
===Property===
object(SimpleXMLElement)#%d (3) {
  ["@attributes"]=>
  array(1) {
    ["attr1"]=>
    string(5) "first"
  }
  ["comment"]=>
  object(SimpleXMLElement)#%d (0) {
  }
  ["elem2"]=>
  object(SimpleXMLElement)#%d (1) {
    ["elem3"]=>
    object(SimpleXMLElement)#%d (1) {
      ["elem4"]=>
      object(SimpleXMLElement)#%d (1) {
        ["test"]=>
        object(SimpleXMLElement)#%d (0) {
        }
      }
    }
  }
}
===Array===
object(SimpleXMLElement)#%d (1) {
  [0]=>
  string(5) "elem1"
}
object(SimpleXMLElement)#%d (1) {
  [0]=>
  string(5) "first"
}
===Set===
object(SimpleXMLElement)#%d (1) {
  [0]=>
  string(8) "Changed1"
}
object(SimpleXMLElement)#%d (1) {
  [0]=>
  string(2) "12"
}
===Unset===
NULL
NULL
===Misc.===
int(4)
int(4)
===Done===