ID: 30920 User updated by: hieu at laposte dot net Reported By: hieu at laposte dot net -Status: Bogus +Status: Closed Bug Type: XML related Operating System: windows xp PHP Version: 5.0.2 New Comment:
OK i understand now. Sorry. Thank you. Previous Comments: ------------------------------------------------------------------------ [2004-12-01 23:20:46] [EMAIL PROTECTED] Please read the text and the next example from the article, too. ------------------------------------------------------------------------ [2004-12-01 20:59:07] hieu at laposte dot net I use the example found in the article above, and i get the error again. For me it is a bug. syndic.xml = <?xml version="1.0"?> <entries xmlns:blog="http://www.edwardbear.org/serendipity/"> <blog:entry> <blog:name>RPROF - Regular Expression Profiler</blog:name> </blog:entry> <blog:entry> <blog:name>Advanced PHP Programming</blog:name> </blog:entry> </entries> <?php $entries = simplexml_load_file('syndic.xml'); foreach ($entries->blog->entry as $entry) { printf("%s\n", $entry->name); } ?> What i only get is : Warning: Invalid argument supplied for foreach() in c:\home\www\ado\txml.php on line 3 ------------------------------------------------------------------------ [2004-11-29 07:05:32] [EMAIL PROTECTED] read the article mentioned above at zend, especially the part about namespaces.. It's not a bug. You have to use the method "children()" ------------------------------------------------------------------------ [2004-11-28 20:26:04] hieu at laposte dot net print_r doesn't work correctly with simplexml, okay... but please read this new code, it doesn't use print_r and shows the same bug : bug.xsd = <?xml version="1.0" encoding="utf-16" ?> <xs:schema id="bug" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="dataset"> </xs:element> </xs:schema> $xml = simplexml_load_file("bug.xsd"); $elt = $xml->element; $attr = (string) $elt['name']; echo $attr; => nothing is printed... if i remove the "xs:" prefix in the xsd file, this same code displays : "dataset" ------------------------------------------------------------------------ [2004-11-28 12:07:14] [EMAIL PROTECTED] print_r and var_dump don't work reliably on simplexml objects... do *not* use them or even rely on them... And see http://www.zend.com/php5/articles/php5-simplexml.php for more info about SimpleXML and Namespaces ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/30920 -- Edit this bug report at http://bugs.php.net/?id=30920&edit=1
