输出php数组中的所有元素并计算它们的出现次数

时间:2015-04-23 15:34:25

标签: php arrays multidimensional-array count elements

这是我的多维数组的一部分:

expected to find text "Welcome!" in ""

我的目标是获取所有带有id [0]的元素,而不重复相同的元素,但是它们的出现次数在括号中,如此输出:

Array
(
    [0] => Array
        (
            [0] => 101
            [1] => ...
        )

    [1] => Array
        (
            [0] => 102
            [1] => ...
        )

    [2] => Array
        (
            [0] => 102
            [1] => ...
        )

    [3] => Array
        (
            [0] => 102
        )

    [4] => Array
        (
            [0] => 300
        )

    [5] => Array
        (
            [0] => test
        )

    [6] => Array
        (
            [0] => test
        )
)

2 个答案:

答案 0 :(得分:3)

array_column()需要

PHP> = 5.5.0:

$result = array_count_values(array_column($array, 0));

对于< 5.5.0将array_column()替换为:

array_map(function($v) { return $v[0]; }, $array)

然后:

foreach($result as $k => $v) {
    echo "$k ($v)";
}

答案 1 :(得分:0)

您可以简单地使用print_r(array_count_values($array));,它会返回您需要的计数。

$array = array(101, 102, 103, 103, 103, 104, 104, 105, 106, 106, 106, 106, 7);
print_r(array_count_values($array));

Result:

Array
( [1] => 1 ,[2] => 1 , [3] => 3, [4] => 2,[5] =>1, [6] => 4, [7] => 1 )