1

基本的にGoogle Plus APIとプル情報に接続する関数を作成しています。nextPageToken残念ながら、一度に複数の結果を取得するには、API コールバックで提供されているを使用する必要があります。これが私がこれまでに持っているものです:

function get_data($url) {
    $ch = curl_init();
    $timeout = 5;
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;
}
function parseResults($nextPageToken = "") {
    $count = 0;
    $content = get_data('https://www.googleapis.com/plus/v1/activities?query=%23throughglass&maxResults=10&orderBy=recent&fields=items(actor(displayName%2Curl)%2Cid%2Cobject(actor%2Cattachments)%2Curl%2Cverb)%2CnextPageToken&pageToken=' . $nextPageToken . '&key=YOUR API KEY HERE');
    $posts = json_decode($content);
    $token = $posts->nextPageToken;
    foreach ($posts->items as $value){
        $id = $value->id;
        $id_query = mysql_query("SELECT id FROM images WHERE id = '$id'");
        if ($value->verb != "post") continue;
        if (mysql_num_rows($id_query) > 0) continue;
        echo $value->actor->displayName . "<br />";
        $count++;
    }
    if ($count < 20){
        parseResults($token);
    }else{
        break;
    }

}
parseResults();

ここで私がやろうとしていることを少しでも理解できれば、誰かが私を助けてくれることを願っています. 私は基本的に、20 レコードが処理されるまで、提供された nextPageToken を使用して parseResults() 関数を再呼び出しし続けたいと考えています。

4

2 に答える 2