FollowModel::getFriendsForApi PHP Method

getFriendsForApi() public method

获取指定用户的朋友列表,API专用
public getFriendsForApi ( integer $mid, integer $uid, integer $since_id, integer $max_id, integer $limit = 20, integer $page = 1 ) : array
$mid integer 当前登录用户ID
$uid integer 指定用户ID
$since_id integer 主键起始ID,默认为0
$max_id integer 主键最大ID,默认为0
$limit integer 结果集数目,默认为20
$page integer 页数ID,默认为1
return array 指定用户的朋友列表
    public function getFriendsForApi($mid, $uid, $since_id = 0, $max_id = 0, $limit = 20, $page = 1)
    {
        $uid = intval($uid);
        $since_id = intval($since_id);
        $max_id = intval($max_id);
        $limit = intval($limit);
        $page = intval($page);
        $where = " a.uid = '{$uid}' AND b.uid IS NOT NULL";
        if (!empty($since_id) || !empty($max_id)) {
            !empty($since_id) && ($where .= " AND a.follow_id > {$since_id}");
            !empty($max_id) && ($where .= " AND a.follow_id > {$max_id}");
        }
        $start = ($page - 1) * $limit;
        $end = $limit;
        $list = D()->table('`' . $this->tablePrefix . 'user_follow` AS a LEFT JOIN `' . $this->tablePrefix . 'user_follow` AS b ON a.uid = b.fid AND b.uid = a.fid')->field('a.fid, a.follow_id')->where($where)->limit("{$start}, {$end}")->order('a.follow_id DESC')->findAll();
        if (empty($list)) {
            return array();
        } else {
            $r = array();
            foreach ($list as $key => $value) {
                $uid = $value['fid'];
                $value['uid'] = $uid;
                $r[$key] = model('User')->formatForApi($value, $uid, $mid);
                unset($r[$key]['fid']);
            }
            return $r;
        }
    }