003.phpt 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. --TEST--
  2. SimpleXML: Entities
  3. --EXTENSIONS--
  4. simplexml
  5. --FILE--
  6. <?php
  7. $xml =<<<EOF
  8. <?xml version='1.0'?>
  9. <!DOCTYPE sxe SYSTEM "notfound.dtd" [
  10. <!ENTITY included-entity "This is text included from an entity">
  11. ]>
  12. <sxe id="elem1">
  13. Plain text.
  14. <elem1 attr1='first'>
  15. <!-- comment -->
  16. <elem2>
  17. <elem3>
  18. &included-entity;
  19. <elem4>
  20. <?test processing instruction ?>
  21. </elem4>
  22. </elem3>
  23. </elem2>
  24. </elem1>
  25. </sxe>
  26. EOF;
  27. var_dump(simplexml_load_string($xml));
  28. ?>
  29. --EXPECTF--
  30. object(SimpleXMLElement)#%d (2) {
  31. ["@attributes"]=>
  32. array(1) {
  33. ["id"]=>
  34. string(5) "elem1"
  35. }
  36. ["elem1"]=>
  37. object(SimpleXMLElement)#%d (3) {
  38. ["@attributes"]=>
  39. array(1) {
  40. ["attr1"]=>
  41. string(5) "first"
  42. }
  43. ["comment"]=>
  44. object(SimpleXMLElement)#%d (0) {
  45. }
  46. ["elem2"]=>
  47. object(SimpleXMLElement)#%d (1) {
  48. ["elem3"]=>
  49. object(SimpleXMLElement)#%d (2) {
  50. ["included-entity"]=>
  51. object(SimpleXMLElement)#%d (1) {
  52. ["included-entity"]=>
  53. string(36) "This is text included from an entity"
  54. }
  55. ["elem4"]=>
  56. object(SimpleXMLElement)#%d (1) {
  57. ["test"]=>
  58. object(SimpleXMLElement)#%d (0) {
  59. }
  60. }
  61. }
  62. }
  63. }
  64. }