我试图使用api密钥和秘密密钥访问flickr图像。搜索完之后,我从链接获得了一个压缩文件。在给出example.php文件中的每个密钥和秘密密钥后,我将收到一个警告,即
Warning: Invalid argument supplied for foreach() in C:\wamp\www\phpFlickr-3.1\example.php on line 21下面是我正在尝试的示例代码:
require_once("phpFlickr.php");
$f = new phpFlickr($api_key);
$recent = $f->photos_getRecent();
foreach ($recent['photo'] as $photo) {
$owner = $f->people_getInfo($photo['owner']);
echo "<a href='http://www.flickr.com/photos/" . $photo['owner'] . "/" . $photo['id'] . "/'>";
echo $photo['title'];
echo "</a> Owner: ";
echo "<a href='http://www.flickr.com/people/" . $photo['owner'] . "/'>";
echo $owner['username'];
echo "</a><br>";
}请帮助我,我试着从过去的3天开始做这段代码,但是没有任何效果。
发布于 2014-07-04 08:01:58
您需要一个在线服务器来尝试您正在使用的代码,因为您希望测试flick。这是正确的,但您必须购买服务器几个小时,只是为了尝试您的代码。一个好的建议是https://www.digitalocean.com
发布于 2017-06-21 12:27:01
这段代码可以用来测试和确认应用程序和Flickr应用程序之间的请求响应是否正确。有时,由于请求参数不正确,Flickr的响应不像预期的那样,因此页面将无法正确呈现。
注意事项:您可能需要测试cURL是否正在计划运行此代码的服务器上工作,并在执行以下代码之前进行必要的更改。
<?php
$url = 'https://api.flickr.com/services/rest/';
$data = array("method"=>"flickr.photos.getRecent","api_key"=>"{YOUR_API_KEY}","format"=>"json","nojsoncallback"=>"1");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
$result_data_json = json_decode($result,true);
$photoset = $result_data_json['photos'];
$photos = $photoset['photo'];
curl_close($ch);
foreach($photos as $pic){
// https://farm{farm-id}.staticflickr.com/{server-id}/{id}_{secret}.jpg
$pic_thumbnail_url = 'https://farm'.$pic['farm'].'.staticflickr.com/'.$pic['server'].'/'.$pic['id'].'_'.$pic['secret'].'_n.jpg';
$pic_url = 'https://farm'.$pic['farm'].'.staticflickr.com/'.$pic['server'].'/'.$pic['id'].'_'.$pic['secret'].'.jpg';
$pic_large_url = 'https://farm'.$pic['farm'].'.staticflickr.com/'.$pic['server'].'/'.$pic['id'].'_'.$pic['secret'].'_b.jpg';
echo '<img src='.$pic_thumbnail_url.'</img>';
// echo '<br/><img src='.$pic_url.'</img>';
// echo '<br/><img src='.$pic_large_url.'</img>';
}
?>https://stackoverflow.com/questions/24552604
复制相似问题