在SimpleXML和检索HREF节点值方面需要帮助

|| 我正在尝试检索HREF并使用SimpleXML将其回显,但我不断收到以下错误消息。 警告:为...中的foreach()提供了无效的参数
<?php

$url = \'file.xml\';

foreach(simplexml_load_file($url)->info->content->item as $it) {
    echo $it->site-page-href;
}

?> 

<?xml version=\"1.0\" encoding=\"utf-8\"?>
<info>
    <content>
        <item>
            <site>
                <page>
                    <href>http://domain.com</href>
                </page>
            </site>
        </item>
    </content>
<info>
谁能发现问题?     
已邀请:
        
echo $it->site-page-href;
应该是
echo
$it->site->page->href;
您的 结束标签应为
</info>
您不应该使用
->info
已经在根元素上了。 即。
simplexml_load_file($url)->content->item
simplexml_load_file($url)->info->content->item
顺便说一句,如果使用xpath,可以更轻松地找到所有href节点。
 $xml = simplexml_load_file($url);
 $href = $xml->xpath(\".//href\");
 foreach($href as $h) {
    var_dump($h);
 }
    
        首先使用
echo $it->site->page->href;
代替
echo $it->site-page-href;
并在XML文件中以
</info>
结束
<info>
标记。     

要回复问题请先登录注册