Как отобразить массив php как HTML?
Я работаю с Yahoo BOSS API, чтобы создать поиск изображений для motherpipe.co.uk.
Мне удалось создать действительный запрос на списки изображений и получил ответ. Моя проблема в том, что я не понимаю, как я могу использовать различные элементы этого ответа для создания своей красивой страницы списков изображений.
В идеале я хочу пройтись по массиву и отобразить миниатюру и ссылку для каждого элемента в списке, но каким-то образом я не могу абстрагировать соответствующие биты от результатов $.
Результат (пример) из запроса с двумя списками находится в следующих $ результатах:
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>
Я думаю, что мне нужно для каждого подхода, но после попытки в течение трех дней я не могу заставить его работать.
Любая помощь высоко ценится.
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"
будет равно "фу не бар".
Также хорошо отметить, что html будет лучше, если вы также выведите размеры изображения и может измениться в зависимости от того, какую html-спецификацию вы реализуете.