ユーザーの Twitter フォロワーを取得する次のコードを作成しました。フォロワーが 150 人以下のユーザーに適しています (いくつかのアカウントでテストしました)。
ただし、ユーザーのフォロワーが 500 人を超えると、スクリプトの読み込みに時間がかかり、PHP の最大実行時間のためにタイムアウトになることがあります。
これを行うためのより良い方法を見つけたいのですが、許容される実行時間を増やすために php.ini を編集したくありません。
<?php
$cursor = -1;
$account_from = 'twitter';
do
{
$json = file_get_contents('http://api.twitter.com/1/followers/ids.json?cursor='.$cursor.'&screen_name='.$account_from.'');
$accounts = json_decode($json);
foreach ($accounts->ids as $account)
{
$a[] = $account ;
}
$cursor = $accounts->next_cursor;
}while ($cursor > 0);
$n = ceil(count($a) / 100) ;
$b = array_chunk($a, 100) ;
for($i=0 ; $i<$n ; $i++) {
$user = '';
for($j=0 ; $j<count($b[$i]) ; $j++) {
$user = $user.$b[$i][$j].',' ;
}
$json=file_get_contents('http://api.twitter.com/1/users/lookup.json?user_id='.$user.'') ;
$fo= json_decode($json);
foreach ($fo as $key => $jsons) {
foreach($jsons as $key => $value) {
if($key == 'screen_name'){
$arr[] = $value;
}
}
}
}
echo "<pre>" ;
print_r($arr) ;
?>