0

我想知道如何计算有多少人在 Instagram 中关注某人并将数字放在 var 中,Instagram 为您提供了此链接:

https://api.instagram.com/v1/users/3/followed-by?access_token=xxxxxxxxx.xxxxxxxxxxxxxxxxxxxx

并显示这样的结果

{
    "data": [{
        "username": "meeker",
        "first_name": "Tom",
        "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_6623_75sq.jpg",
        "id": "6623",
        "last_name": "Meeker"
    },
    {
        "username": "Mark",
        "first_name": "Mark",
        "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_29648_75sq_1294520029.jpg",
        "id": "29648",
        "last_name": "Shin"
    },
    {
        "username": "nancy",
        "first_name": "Nancy",
        "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_13096_75sq_1286441317.jpg",
        "id": "13096",
        "last_name": "Smith"
    }]
}

我如何计算有多少个并将其放在一个 var 中,让我们说:

<? echo "You are been follow by ".$followers." users!"; ?>

显示:您已被 3 位用户关注!

4

6 回答 6

3

您需要使用 json_decode 来解码 JSON 响应,然后访问结果对象的数据属性(“跟随者”对象的数组),并计算:

$json = '{
    "data": [{
        "username": "meeker",
        "first_name": "Tom",
        "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_6623_75sq.jpg",
        "id": "6623",
        "last_name": "Meeker"
    },
    {
        "username": "Mark",
        "first_name": "Mark",
        "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_29648_75sq_1294520029.jpg",
        "id": "29648",
        "last_name": "Shin"
    },
    {
        "username": "nancy",
        "first_name": "Nancy",
        "profile_picture": "http://distillery.s3.amazonaws.com/profiles/profile_13096_75sq_1286441317.jpg",
        "id": "13096",
        "last_name": "Smith"
    }]
}';
$json = json_decode($json);
echo "You have " .count($json->data) ." followers"

或者

$json = json_decode($json,true);
echo "You have " .count($json['data']) ." followers"
于 2013-04-18T10:31:47.750 回答
1

你得到一个 json 字符串,你需要使用json_decode对其进行解码。

$data = json_decode($string,true);
$followers = count($data['data']);

键盘演示

于 2013-04-18T10:28:28.127 回答
0

用于json_decode()从 JSON 创建 PHP 数组。然后你可以简单地做一个count()

$jsonData = json_decode($yourAPIResult);
echo count($jsonData->data);

但是请注意,您可能应该设置一些错误处理,以防 API 没有返回正确的 JSON 字符串。所以这样的事情可能会更好:

if (is_null($jsonData) || !property_exists($jsonData, 'data')) {
   echo '?';
} else {
   echo count($jsonData->data);
}
于 2013-04-18T10:28:06.707 回答
0

您需要使用json_decode()which 将返回一个 PHP 数组。然后你需要做的就是count()用'data'键对数组中的所有值。

于 2013-04-18T10:29:46.627 回答
0

您可以使用 json_decode

$array = json_decode($str);

然后给

echo count($array);

它将给出用户总数

于 2013-04-18T10:30:09.557 回答
0

计算返回为 JSON 的条目的简单方法

echo count(json_decode($followers);
于 2013-04-18T10:31:11.247 回答