我正在使用Yahoo BOSS API为motherpipe.co.uk构建图像搜索。
我设法创建了有效的图片列表请求并收到了回复。我的问题是,我不明白如何使用该响应的不同元素来构建我看起来漂亮的图像列表页面。
理想情况下,我想循环遍历数组,并为列表中的每个项目显示缩略图和链接,但不知何故,我无法从$ results中抽象相关位。
带有两个商家信息的查询的(示例)输出位于此 $ results 中:
stdClass Object ( [bossresponse] => stdClass Object ( [responsecode] => 200 [images] => stdClass Object ( [start] => 0 [count] => 2 [totalresults] => 107000 [results] => Array ( [0] => stdClass Object ( [clickurl] => htt://library.thinkquest.org/07aug/01105/Sweden/stockholm.jpg [size] => 191.8KB [format] => jpeg [height] => 586 [refererclickurl] => htt://library.thinkquest.org/07aug/01105/Sweden/sweden_home.html [refererurl] => htt://library.thinkquest.org/07aug/01105/Sweden/sweden_home.html [title] => Stockholm is a beautiful city with Lake Mälaren on it’s WestSide ... [url] => http://library.thinkquest.org/07aug/01105/Sweden/stockholm.jpg [width] => 793 [thumbnailheight] => 118 [thumbnailurl] => htt://ts4.mm.bing.net/th?id=H.4970051277687231&pid=15.1&H=118&W=160 [thumbnailwidth] => 160 ) [1] => stdClass Object ( [clickurl] => http://summerventures.files.wordpress.com/2012/01/429c_stockholm_ch.jpg [size] => 2.3MB [format] => jpeg [height] => 1272 [refererclickurl] => htt://summerventures.wordpress.com/tag/stockholm/ [refererurl] => htt://summerventures.wordpress.com/tag/stockholm/ [title] => stockholm | Summer adventures [url] => htt://summerventures.files.wordpress.com/2012/01/429c_stockholm_ch.jpg [width] => 1800 [thumbnailheight] => 113 [thumbnailurl] => htt://ts2.mm.bing.net/th?id=H.4581116279128437&pid=15.1&H=113&W=160 [thumbnailwidth] => 160 ) ) ) ) )
问题:
我可以使用什么方法只使用[thumbnailurl]和[refererclickurl]中的信息显示带有来自此数组中每个列表的链接的缩略图,
<div> <<a href="[refererclickurl]"><img src="[thumbnailurl]" alt="alt text" /> </div>
我认为我需要针对每种方法,但在尝试了三天后,我无法使其发挥作用。
任何帮助都非常感激。
答案 0 :(得分:1)
尝试以下方法。您问题中的引用对象位于$o
变量中。
$html = '';
$images = $o->bossresponse->images->results;
foreach ($images as $image) {
$html .= "<a href='{$image->refererclickurl}'><img src='{$image->thumbnailurl}'></a>";
}
echo $html;
请注意,如果$obj->prop
等于'foo',则"{$obj->prop} is not bar"
将等于'foo不是bar'。
还要注意的是,如果您还输出图像尺寸,html会更好,并且可能会根据您正在实施的html规范而改变。