foreach($xml1->results as $info) {
$title = $info->listing->title;
$favicon = $info->listing->favicon;
echo $favicon;
echo "<a href=".$redirect;
echo ">".$title."</a><BR>";
}
输出一切正常,但只显示一条记录。有什么问题吗?
XML结构<listing>
<title></title>
<url></url>
<description>[result-description]</description>
</listing>
您的代码和问题表明$xml包含至少两个标记"results"。
simplexml忽略根标记作为对象的一部分,它只包含属性。
所以,如果XML看起来像
<results>
<listing>
<title></title>
<favicon></favicon>
</listing>
<listing>
<title></title>
<favicon></favicon>
</listing>
</results>
代码应该是
foreach($xml1->listing as $info)
这个适合我:
$xml="<?xml version='"1.0'" encoding='"UTF-8'"?>
<results>
<listing>
<title>title 1</title>
<favicon>fav1</favicon>
</listing>
<listing>
<title>title 2</title>
<favicon>fav2</favicon>
</listing>
</results>
";
$xmlObj=simplexml_load_string($xml);
foreach($xmlObj as $info){
$title = $info->title;
$favicon = $info->favicon;
echo $favicon;
echo "<a href=''";
echo ">".$title."</a><BR>";
}