我怎样才能对数组的项目进行计算?

时间:2018-05-21 11:32:01

标签: php

我有一个这样的数组:

$arr [
         ["name" = "Martin", "type" = "0"],
         ["name" = "Jack", "type" = "0"],
         ["name" = "Tiam", "type" = "1"]
     ];

现在我需要计算type=0项的数量。目前我使用count($arr)返回3。预期结果为2

我可以使用循环加上一个if语句来做到这一点。但是,还有什么更好的主意吗?

3 个答案:

答案 0 :(得分:2)

试试这个:

$result = array_filter($arr,function($item){
    return $item['type'] == 0;
});

echo count($result);

Array Filter Docs

Functional Programming in PHP

答案 1 :(得分:2)

array_filter应该可以解决这个问题:

$arr = [
["name" => "Martin", "type" => "0"],
["name" => "Jack", "type" => "0"],
["name" => "Tiam", "type" => "1"]
];

$arr = array_filter($arr,function($item){
    return $item['type']==0;
});

print_r($arr);

答案 2 :(得分:1)

试试这个

        $arr  = array(
            array(
            'name' => 'Martin',
            'type' => '0',
        ),
            array(
            'name' => 'Martin',
            'type' => '0',
        ),
            array(
            'name' => 'Martin',
            'type' => '25',
        )
        );

        $arr = array_filter($arr,function($item){
    return $item['type']==0;
});

echo count($arr);
        die;
相关问题