ID: 42289 Updated by: [EMAIL PROTECTED] Reported By: cpriest at warpmail dot net -Status: Assigned +Status: Closed Bug Type: Documentation problem Operating System: * PHP Version: 5.2.4RC1 Assigned To: rrichards New Comment:
This bug has been fixed in the documentation's XML sources. Since the online and downloadable versions of the documentation need some time to get updated, we would like to ask you to be a bit patient. Thank you for the report, and for helping us make our documentation better. "Returns an array of SimpleXMLElement objects or FALSE in case of an error." Previous Comments: ------------------------------------------------------------------------ [2007-08-18 10:11:40] [EMAIL PROTECTED] re-classifying as documentation issue. xpath() returns boolean on failure. ------------------------------------------------------------------------ [2007-08-17 13:39:17] [EMAIL PROTECTED] Rob, you didn't get away that easy. :) ------------------------------------------------------------------------ [2007-08-15 14:27:41] cpriest at warpmail dot net According to the specs: > Always returns an array of SimpleXMLElement objects. While the xpath() is actually returning a boolean value. Here is some revised code which demonstrates an incorrect return value: <?php require_once('inc.backend.interactive.php'); header('Content-Type: text/plain'); set_time_limit(0); $ResponseBody = '<?xml version="1.0" encoding="UTF-8"?><postresponse><status accept="no">INVALID</status></postresponse>'; $objXML = new SimpleXMLElement($ResponseBody); $tMatches = $objXML->xpath('postresponse/status/@accept'); print_r($tMatches); print_r(gettype($tMatches)); // print_r((string)$tMatches[0]); ?> ------------------------------------------------------------------------ [2007-08-14 11:56:16] [EMAIL PROTECTED] Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php output is correct. $objXML is document element ------------------------------------------------------------------------ [2007-08-14 01:12:55] cpriest at warpmail dot net Description: ------------ Non-absolute paths using ->xpath() do not match appropriately. With the given example, changing the xpath to '/postresponse/status/@accept' correctly returns "no" Reproduce code: --------------- <? $ResponseBody = '<?xml version="1.0" encoding="UTF-8"?><postresponse><status accept="no">INVALID</status></postresponse>'; $objXML = new SimpleXMLElement($ResponseBody); $tMatches = $objXML->xpath('postresponse/status/@accept'); print_r((string)$tMatches[0]); ?> Expected result: ---------------- "no" Actual result: -------------- xpath() returns no results ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=42289&edit=1