Получить все фотографии из всех альбомов


У меня есть этот код для получения фотографий из определенного альбома, однако я хочу запросить все альбомы, получить их идентификаторы и для каждого идентификатора перечислить все фотографии.

<?php 
 require 'facebook/src/facebook.php';
  $appId = '[app_id]';
  $secret = '[app_secret]';
  $access_token = '[access_token]';
  $facebook = new Facebook(array('appId' => $appId, 'secret' => $secret, ));
  $facebook->setAccessToken($access_token);



$albums = $facebook->api('/me/albums?fields=name,count'); 
print_r ($albums);


$album_ID = "309608592385363"; //album ID
$list_pictures = $facebook->api('/'.$album_ID.'/photos', array('access_token' => $access_token));
print_r ($list_pictures);



?>

Имейте в виду, что я удалил переменную, такую как мой идентификатор приложения и т. Д. Они работают каждый по своему усмотрению, печатая $альбомы и $list_pictures, но я пытаюсь преодолеть разрыв между ними, чтобы альбомы указывали список изображений, к которым должен иметь доступ каждый album_id. Я делаю это для клиента, который не собирается вдаваться в ручное кодирование.

СПАСИБО!

Author: Tiffany Israel, 2012-02-20

2 answers

  $albums = $facebook->api('/me/albums?fields=id'); 
  $pictures = array();
  foreach ($albums['data'] as $album) {
    $pics = $facebook->api('/'.$album['id'].'/photos?fields=source,picture');
    $pictures[$album['id']] = $pics['data'];
  }

  //display the pictures url
  foreach ($pictures as $album) {
    //Inside each album
    foreach ($album as $image) {
      $output .= $image['source'] . '<br />';
    }
  }
  exit($output);
 8
Author: Alexander Nenkov, 2012-02-20 21:05:27

Почему вы не можете выполнить цикл по массиву $albums?

Псевдокод:

foreach $album in $albums
{
  $list_pictures += $facebook->api(...);
}
 0
Author: Michael Pryor, 2012-02-20 19:29:24