我如何计算二维数组 - PHP

时间:2011-12-02 09:43:55

标签: php arrays

Array
(
    [0] => Array
    (
        [not_valid_user] => Array
        (
            [] => asdsad
        )
    )
    [1] => Array
    (
    )
    [2] => Array
    (
        [not_valid_user] => Array
        (
            [] =>  asdasd
        )
    )
)

我需要数组计数[not_valid_user]

例如:

以上数组计数为2.我怎样才能得到它?

提前致谢...

4 个答案:

答案 0 :(得分:2)

$invalidUsersFound = 0;
foreach ( $data as $k => $v ) {
  if ( IsSet ( $v['not_valid_user'] ) === true )
    $invalidUsersFound++;
}

这应该可以解决问题。

答案 1 :(得分:2)

如果你想要的是每个“not_valid_user”数组中所有元素的数量,

$count=0;
foreach($mainArray as $innerArray)
{

 if (isset($innerArray['not_valid_user']) && is_array($innerArray['not_valid_user']))
 { 
    $count += count($innerArray['not_valid_user']);// get the size of the 'not_valid_user' array
 } 
}

echo $count;//Count of all elements of  not_valid_user

答案 2 :(得分:0)

<?php
$count=0;
foreach($mainArray as $innerArray)
{

if(isset($innerArray['not_valid_user']))
  $count++;
}

echo $count;//Count of not_valid_user

?>

答案 3 :(得分:0)

$cnt = 0;

array_map(function ($value) use (&$cnt) {

    $cnt += (int)(isset($value["not_a_valid_user"]));

}, $arr);

echo $cnt;

提供您的PHP版本支持匿名函数。