首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过在php中查找json对象的值来计数json对象

通过在php中查找json对象的值来计数json对象
EN

Stack Overflow用户
提问于 2015-09-11 06:44:34
回答 3查看 484关注 0票数 2

我有这个json数据。如何使用leader来计数对象我想要计数"leader": "true"

这是我的json:在本例中,"leader":"true"的计数是1

代码语言:javascript
复制
[
{
"id":23,
"uid":"0090000219",
"cid":"0090000013",
"extension":"201",
"secret":"Myojyo42_f",
"leader":true,
"simultaneous":false,
"confbridge_id":17,
"created_at":"2015-09-02 12:49:12",
"updated_at":"2015-09-02 12:49:12"
},
{
"id":24,
"uid":"0090000221",
"cid":"0090000013",
"extension":"203",
"secret":"Myojyo42_f",
"leader":false,
"simultaneous":false,
"confbridge_id":17,
"created_at":"2015-09-02 12:49:12",
"updated_at":"2015-09-02 12:49:12"
},
{
"id":25,
"uid":"0090000223",
"cid":"0090000013",
"extension":"205",
"secret":"Myojyo42_f",
"leader":false,
"simultaneous":false,
"confbridge_id":17,
"created_at":"2015-09-10 10:16:24",
"updated_at":"2015-09-10 10:16:24"
}
]

这是我的密码:

代码语言:javascript
复制
        foreach($apiResults['conference_participants'] as &$record) {
           $leader_count = count(record['leader']);  
        }
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-09-11 06:50:42

首先解码它,然后返回,然后计数数据leader

试试这个:

代码语言:javascript
复制
$decoded = json_decode($json, true);



     $count = 0;
    foreach($decoded as $key => $val)
    {
       if($val['leader'] == 1)
       {
           $count++;
       }
    }
    echo $count;
       //if you want also to count the false then add else in the statement echo  $count++;
    }
票数 0
EN

Stack Overflow用户

发布于 2015-09-11 06:57:20

这会成功的..。测试和确认

代码语言:javascript
复制
$data = json_decode($json, true);
$count=0;
    foreach($data as $key => $val)
    {
       if($val['leader'] == 1)
       {
           $count++;
       }
    }
    echo $count;
票数 1
EN

Stack Overflow用户

发布于 2015-09-11 06:51:26

这可以通过使用count函数以及array_filter和json_decode来完成。

代码语言:javascript
复制
echo count (array_filter(json_decode($json), 
                         function($a){ return $a->leader?1:0;}));

从内到外:

首先,json_decode将字符串生成一个stdClass对象数组。

然后,array_filter使用回调筛选出领导者属性为false的条目。

最后,计数可以让您知道返回数组中有多少个元素。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32517173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档