今天发现新浪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获得 微博的评论数和转发数
转载于:https://blog.51cto.com/jsny821/864060