关联数组计数Php

时间:2014-02-05 10:29:46

标签: php arrays

我得到了数组

   array(
    0 => array(
        "element1" => "A",
        "place" => "B"
    ),
    1 => array(
        "element1" => "A",
        "place" => Y
    ),
2=> array(
        "element1" => "B",
        "place" => Y
    )
    )

我希望得到唯一的element1值计数。有什么简短的方法吗?例如,“element1”中有一个“A”,“element1”中有一个“B”。 结果是2 ,类似于MySQL中的group by。

2 个答案:

答案 0 :(得分:0)

如果你使用的是PHP 5.5,你可以这样做..

根据您的评论,您需要unique

echo count(array_unique(array_column($arr,'element1')));

代码

<?php
$arr=array(0=>array("element1"=>"A","place"=>"B"),1=>array("element1"=>A,"place"=>Y));
echo count(array_unique(array_column($arr,'element1'))); //"prints" 1

Demo

答案 1 :(得分:0)

working demo

这正是你想要的:

$arr = array(
    0=>array("element1"=>"A","place"=>"B"),
    1=>array("element1"=>"B","place"=>"Y")
    );
foreach($arr as $val){
    $res[$val['element1']][] = 1;
}
echo count($res);

结果

2