2

これにより、時系列に反する順序で並べられた配列が返されます。クエリのオフセット/制限を指定するにはどうすればよいですか?

$photos = $facebook->api('me/photos');
4

1 に答える 1

1

created_time順序は、検証するためのパラメーター チェックに基づいています。

http://developers.facebook.com/tools/explorer/?method=GET&path=me%2Fphotos%3Ffields%3Dcreated_time%2Cupdated_time

すべての JSON 応答の末尾にあるページング プロパティを使用すると、セットをトラバースできます。

"paging": {
    "previous": "https://graph.facebook.com/me/photos?fields=created_time\u00252Cupdated_time&value=1&redirect=1&limit=25&since=1341554766", 
    "next": "https://graph.facebook.com/me/photos?fields=created_time\u00252Cupdated_time&value=1&redirect=1&limit=25&until=1311564489"
  }

たとえば、すべての写真を取得するには、

if($user_id) {
    $the_photos = array();

    $your_photos = $facebook->api("me/photos");

    while ($your_photos['data'])
    {
        $the_photos = array_merge( $the_photos, $your_photos['data'] );

        $paging = $your_photos['paging'];
        $next = $paging['next'];

        $query = parse_url($next, PHP_URL_QUERY);
        parse_str($query, $par);

        $your_photos = $facebook->api(
                "me/photos", 'GET', array(
                'limit' => $par['limit'],
                'until'  => $par['until'] ));
    }

    echo count($the_photos);
}

それでもこれに慣れていない場合は、切り替えて and を使用offsetしてlimitください。これらはパラメーターとしても許可されています。offset各トラバースの制限でパラメータを増やします。

于 2012-07-10T03:28:29.120 に答える