007.phpt 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. --TEST--
  2. SimpleXML: Attributes
  3. --EXTENSIONS--
  4. simplexml
  5. --FILE--
  6. <?php
  7. $xml =<<<EOF
  8. <?xml version='1.0'?>
  9. <!DOCTYPE sxe SYSTEM "notfound.dtd">
  10. <sxe id="elem1">
  11. <elem1 attr1='first'>
  12. <!-- comment -->
  13. <elem2>
  14. <elem3>
  15. <elem4>
  16. <?test processing instruction ?>
  17. </elem4>
  18. </elem3>
  19. </elem2>
  20. </elem1>
  21. </sxe>
  22. EOF;
  23. $sxe = simplexml_load_string($xml);
  24. echo "===Property===\n";
  25. var_dump($sxe->elem1);
  26. echo "===Array===\n";
  27. var_dump($sxe['id']);
  28. var_dump($sxe->elem1['attr1']);
  29. echo "===Set===\n";
  30. $sxe['id'] = "Changed1";
  31. var_dump($sxe['id']);
  32. $sxe->elem1['attr1'] = 12;
  33. var_dump($sxe->elem1['attr1']);
  34. echo "===Unset===\n";
  35. unset($sxe['id']);
  36. var_dump($sxe['id']);
  37. unset($sxe->elem1['attr1']);
  38. var_dump($sxe->elem1['attr1']);
  39. echo "===Misc.===\n";
  40. $a = 4;
  41. var_dump($a);
  42. $dummy = $sxe->elem1[$a];
  43. var_dump($a);
  44. ?>
  45. --EXPECTF--
  46. ===Property===
  47. object(SimpleXMLElement)#%d (3) {
  48. ["@attributes"]=>
  49. array(1) {
  50. ["attr1"]=>
  51. string(5) "first"
  52. }
  53. ["comment"]=>
  54. object(SimpleXMLElement)#%d (0) {
  55. }
  56. ["elem2"]=>
  57. object(SimpleXMLElement)#%d (1) {
  58. ["elem3"]=>
  59. object(SimpleXMLElement)#%d (1) {
  60. ["elem4"]=>
  61. object(SimpleXMLElement)#%d (1) {
  62. ["test"]=>
  63. object(SimpleXMLElement)#%d (0) {
  64. }
  65. }
  66. }
  67. }
  68. }
  69. ===Array===
  70. object(SimpleXMLElement)#%d (1) {
  71. [0]=>
  72. string(5) "elem1"
  73. }
  74. object(SimpleXMLElement)#%d (1) {
  75. [0]=>
  76. string(5) "first"
  77. }
  78. ===Set===
  79. object(SimpleXMLElement)#%d (1) {
  80. [0]=>
  81. string(8) "Changed1"
  82. }
  83. object(SimpleXMLElement)#%d (1) {
  84. [0]=>
  85. string(2) "12"
  86. }
  87. ===Unset===
  88. NULL
  89. NULL
  90. ===Misc.===
  91. int(4)
  92. int(4)