今天發現新浪auto V1和V2的使用不太一樣,舉一個簡單的例子,如這個方法 statuses/user_timeline(獲取某個用戶最新發表的微博列表),用V2調用可以直接獲取到 轉發數和評論數,但是用V1就不可以的,那這樣的話,咱們操作就要分2步進行,首先獲得微博ID,在通過微博ID獲取轉發數和評論數,這時候使用sina api的 get_count_info_by_ids 這個方法時,如果獲取一條微博的評論數和轉發數,參數值必須寫成 array('微博id'),這樣就可以獲取值。如果要獲取多條微博的評論數和轉發數,使用字符串格式,例如:get_count_info_by_ids('3444451702202583,3444456743377282'); 這樣就可以獲得多條微博的評論和轉發了。獲得後的值是一個二維數組。之後就可以做你想要的操作了!
實際代碼操作:
- import("@.Vendor.Platform.SinaSDK");
- $c = new WeiboClient( $this->config['weibo']['SinaAKEY'], $this->config['weibo']['SinaSKEY'], $this->config['weibo']['SinaToken'] , $this->config['weibo']['SinaSecret'] );
- $weiboids = $c->user_timeline(1,100,$user['id']); //獲取用戶前100條微博
- foreach ($weiboids as $weiboid) {
- $allweiboid .= $weiboid['mid'].',';
- }
- $rtcomment = $c->get_count_info_by_ids(trim($allweiboid,',')); //根據微博id獲得 微博的評論數和轉發數