簡體   English   中英

PHP Instagram API分頁

[英]PHP Instagram API Pagination

我正在用PHP編寫一個程序,以檢索用戶在Instagram上關注的用戶的列表。 我的問題是,他們的API每次調用僅返回50個結果,其余的則被分頁。 我知道有一個“下一頁”,因為返回的JSON具有分頁-> next_url。 目前,我擁有的代碼獲取JSON並將其解碼。 之后,立即使用第一個API調用中的URL進行調用以獲取下一頁。 看一看:

    function getFollows($url){
        $client_id = "my client id";
        //echo "A url: ".$url."</br>";
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_TIMEOUT, 20);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        $result = curl_exec($ch);
        curl_close($ch);
        return json_decode($result);
        }
    $url = 'https://api.instagram.com/v1/users/'.$user_id.'/follows/?client_id='.$client_id.'&access_token='.$token;
    $first_page = getFollows($url);
    $second_page = getFollows($first_page->pagination->next_url);

我想做的是檢查下一個URL的JSON並調用next_url。 然后它將檢查該URL的JSON是否為下一個URL,然后重復。 然后將所有收集的JSON合並到一個列表中,然后我可以迭代該列表以回顯每個人。 我的問題是,如何在每次出現分頁時獲取下一個URL,合並JSON並重復進行,直到沒有更多頁面可以瀏覽。

我可以繼續制作$ third_page,$ fourth_page,但是如果用戶有四個以上的關注者頁面,並且例如只有10個關注者,那那將毫無意義。

我嘗試使用if函數來檢查是否存在分頁和array_merge(),但無濟於事。 也許我做錯了。 請有人指出我正確的方向。

謝謝,

-DH

您可以獲取現成的代碼,還有分頁功能-https ://github.com/cosenary/Instagram-PHP-API

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM