Php Twitter API-相同的游标错误

Php Twitter API-相同的游标错误,php,rest,twitter,Php,Rest,Twitter,从twitter的restapi中,I user get/followers函数。 我在下面粘贴了一段代码片段 我的问题是,大多数时候我都能成功获得追随者的ID。但是当一个用户拥有超过5000-6000个追随者时,我的结果就错了 当我从用户的个人资料页面检查时,我看到该用户有5500个追随者,但当我运行以下代码时,大多数时候5500个ID出现,但有时29994个追随者出现在$ids变量中。现在我记录的结果有超过29k的追随者。我看到一些请求返回了29994个追随者,但我找不到答案 在get ID

从twitter的restapi中,I user get/followers函数。 我在下面粘贴了一段代码片段

我的问题是,大多数时候我都能成功获得追随者的ID。但是当一个用户拥有超过5000-6000个追随者时,我的结果就错了

当我从用户的个人资料页面检查时,我看到该用户有5500个追随者,但当我运行以下代码时,大多数时候5500个ID出现,但有时29994个追随者出现在$ids变量中。现在我记录的结果有超过29k的追随者。我看到一些请求返回了29994个追随者,但我找不到答案

在get ID-cursor方法中是否遗漏了某些内容?多谢各位

编辑:经过一些调试后,我记录了“$cursor\u archieve”参数并发现:
*有时下一个\u光标和上一个\u光标相同:

Array
(
    [0] => -1
    [1] => 1400573121087317741
    [2] => 1400573121087317741
    [3] => 1400573121087317741
    [4] => 1400573121087317741
    [5] => 1400573121087317741
    [6] => 1400573121087317741
)
所以在这种情况下,虽然用户有7100个追随者,但我只有5000个追随者

  • 有时光标顺序相同:

    数组

    [0]=>-1
    [1] =>1404335879106773348
    [2] =>1404341060469987526
    [3] =>1404338682006540390
    [4] =>1404341060469987526
    [5] =>1404335879106773348
    [6] =>1404338682006540390
    )

我的代码如下:

public function getIds($user = "someuser"){
    $tmhOAuth = new tmhOAuth(array( 'consumer_key'    => YOUR_CONSUMER_KEY, 
              'consumer_secret' => YOUR_CONSUMER_SECRET,
              'user_token'      => $atoken1, 'user_secret'     => $atoken2, ));

    $cursor = '-1';
    $ids = array();
    $cursor_archieve = array();
    while(true):
        $code=$tmhOAuth->request('GET', $tmhOAuth->url('1/followers/ids'),
                array('screen_name' => $user, 'cursor' => $cursor));

        if ($code == 200) {
            $responseData = json_decode($tmhOAuth->response['response'],true);
            $ids = array_merge($ids, $responseData['ids']);
            $cursor = $responseData['next_cursor_str'];
                    $cursor_archieve[] = $cursor;
        } else {
            return 0;
        }
        if ( $cursor == '0' || count($ids) >= 29000 ) {
            break;
        }
    endwhile;

    return $ids;
}
edit2:我应该使“array\u unique”删除重复的ID,还是如果previous\u cursor=next cursor或任何其他选项,则不使用next cursor?
在任何情况下,用户都有5500-6500个追随者。因此,如果我只使用一个游标,我只能获得前5000个跟随者。

原因是我的代码中存在编程错误。我在一周的调试之后修复了它