flickrでの画像を取得について
次の関数はflickr.interesting.getListでflickrから人気の高い画像を取得する関数ですが、パラメータのdateを指定すると
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\flickr-interesting.php on line 34
と表示されます。
date => 2013-07-24,の行を消すと画像が正常に表示されます。
dateを指定するにはどうすればいいでしょうか?
function search_photos($per_page, $page) {
$proxy = array(
"http" => array(
"proxy" => "tcp://大学のIPアドレス",
'request_fulluri' => true,
),
);
$proxy_context = stream_context_create($proxy);
$params = array(
'method' => 'flickr.interestingness.getList',
'api_key' => API_KEY,
'date' => 2013-07-24,
'per_page' => $per_page,
'page' => $page
);
$pictureSize = "b";
$query = http_build_query($params, '', '&');
$url = 'http://www.flickr.com/services/rest/?' . $query;
//$data = @simplexml_load_string(@file_get_contents($url));
$data = @simplexml_load_string(@file_get_contents($url, false, $proxy_context));
if ($data === false) { return 'エラー' . PHP_EOL; }
$ret = '';
$format = '<a href="http://www.flickr.com/photos/%s/%s/"><img src="http://farm%s.static.flickr.com/%s/%s_%s_m.jpg" alt="%s"></a>' . PHP_EOL;
foreach ($data->photos->photo as $p) {
$ret .= sprintf($format, $p['owner'], $p['id'], $p['farm'], $p['server'], $p['id'], $p['secret'], $p['title'], $pictureSize);
}
return $ret;
}