1

我正在使用 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>

我认为我需要一种适用于每种方法的方法,但是在尝试了三天后,我无法使其发挥作用。

非常感谢任何帮助。

4

1 回答 1

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 is not bar”。

还需要注意的是,如果您还输出图像尺寸,html 会更好,并且可能会根据您正在实施的 html 规范而改变。

于 2013-06-28T19:05:35.653 回答