如何在PHP中统计二维数组中特定下标的值出现次数?

高效统计php二维数组中特定下标值的出现次数

本文介绍一种高效方法,用于统计PHP二维数组中特定下标的值的出现次数。 假设我们有一个二维数组,每个子数组包含id、name和age三个键值对,我们需要统计age值为18的元素个数。

如何在PHP中统计二维数组中特定下标的值出现次数?

以下是一个示例二维数组:

$Array = [     ['id' => 1, 'name' => 'A', 'age' => 19],     ['id' => 2, 'name' => 'B', 'age' => 20],     ['id' => 3, 'name' => 'C', 'age' => 18],     ['id' => 5, 'name' => 'D', 'age' => 18],     ['id' => 6, 'name' => 'E', 'age' => 18] ];

我们可以使用array_reduce函数来简洁地实现统计:

立即学习PHP免费学习笔记(深入)”;

$count = array_reduce($array, function ($carry, $item) {     return $item['age'] === 18 ? ++$carry : $carry; }, 0);  echo "age为18的元素有{$count}个。"; // 输出:age为18的元素有3个。

array_reduce函数将数组$array中的每个元素依次传递给匿名函数。匿名函数检查age是否等于18,如果是,则累加器$carry加1;否则,$carry保持不变。初始值为0。最终,array_reduce返回累加器的值,即age为18的元素个数。

这种方法比使用foreach循环更简洁高效,尤其是在处理大型数组时,性能优势更为明显。 您可以根据需要修改$item[‘age’] === 18部分来统计其他下标的值。 例如,要统计id为3的元素个数,只需将该部分修改为$item[‘id’] === 3即可。

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享