我想一键下载FB页面相册的所有图像。我正在尝试下面的代码。
<?php
$json = file_get_contents('https://graph.facebook.com/v2.3/1609936302636077/photos?access_token=MYTOKEN&pretty=1&limit=200');
$data = json_decode($json,true);
foreach ($data['data'] as $page) {
echo $page[source];
echo "<br>";
}
?>
我正在获取图片网址但FB会立即限制最多100张图片网址,然后他们会提供分页网址,然后再次获取100张图片。
我该如何实现?我试过循环,但我很弱。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:0)
您可以使用递归来获取下一页。但是如果页面的页面非常多。此代码将使excerption消息超时。
$token ='your token';
$url = "https://graph.facebook.com/v2.3/1609936302636077/photos?access_token=$token&pretty=1&limit=200";
getApiData($url);
function getApiData($url){
$json = file_get_contents($url);
$data = json_decode($json,true);
echo count($data['data']).'<br>';
if(isset($data['paging']) && isset($data['paging']['next'])){
getApiData($data['paging']['next']);
}
}
尝试使用方法