Simplexml_load_file empty array

2019-09-16 10:53发布

问题:

I try to load this document:

$url = "http://en.wikipedia.org/w/api.php?action=query&titles=Electrophoresis&prop=langlinks&lllimit=500";

When I run it in browser, everything is fine. When I do this:

ini_set('user_agent', 'XX123456789 (localhost; myemailaddress)'); //sets info for authentication    
$content = file_get_content($url);
var_dump($content);

It return the same xml document as my browser show.

However when I try to

$content_arrays = Simplexml_load_file($content);
echo '<pre>', print_r($content_arrays), '</pre>';

It return a bunch of empty arrays. I just dont get why.

回答1:

simplexml_load_file returns an object, not an array. So you can't just print it with print_r. You need to do more work to navigate through the SimpleXMLElement.