008.phpt 749 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. --TEST--
  2. SimpleXML: XPath
  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. var_dump($sxe->xpath("elem1/elem2/elem3/elem4"));
  25. //valid expression
  26. var_dump($sxe->xpath("***"));
  27. //invalid expression
  28. var_dump($sxe->xpath("**"));
  29. ?>
  30. --EXPECTF--
  31. array(1) {
  32. [0]=>
  33. object(SimpleXMLElement)#%d (1) {
  34. ["test"]=>
  35. object(SimpleXMLElement)#%d (0) {
  36. }
  37. }
  38. }
  39. array(0) {
  40. }
  41. Warning: SimpleXMLElement::xpath(): Invalid expression in %s on line %d%A
  42. bool(false)