随着php语言的逐渐发展,数组操作成为了我们日常工作中不可或缺的一部分。php提供了许多遍历数组的方法,如for、foreach循环等等,但对于需要统计数组中不同项的数量时,有些开发者可能会感到一些困难。本文将介绍遍历数组得到不同数量的几种方法。
使用for循环配合in_array函数可以得到数组中不同项的数量。具体实现方法如下:
$test_array = array("foo", "foo", "bar", "bar", "jim", "jim", "jam");
$count_array = array(); // 初始化一个存储不同项数量的数组
for ($i=0; $i<count($test_array); $i++) {
if (!in_array($test_array[$i], $count_array)) { // 如果当前项不在count_array中
array_push($count_array, $test_array[$i]); // 将当前项加入count_array中
}
}
echo count($count_array); // 输出不同项的数量以上为一种实现方法,但是在使用for循环时,需要考虑数组的长度,对于大数量的数组,该方法可能会带来一些不必要的时间和资源消耗。
通过foreach循环遍历数组,可以更加简洁明了的实现统计不同项数量的操作。具体实现方法如下:
$test_array = array("foo", "foo", "bar", "bar", "jim", "jim", "jam");
$count_array = array(); // 初始化一个存储不同项数量的数组
foreach ($test_array as $value) {
if (!in_array($value, $count_array)) { // 如果当前项不在count_array中
array_push($count_array, $value); // 将当前项加入count_array中
}
}
echo count($count_array); // 输出不同项的数量相对于使用for循环方法,使用foreach循环的代码量更少,更加易读,且相对来说更高效。
立即学习“PHP免费学习笔记(深入)”;
使用array_unique函数可以得到一个不包含重复项的数组,该数组的长度即为原数组中不同项的数量。具体实现方法如下:
$test_array = array("foo", "foo", "bar", "bar", "jim", "jim", "jam");
$unique_array = array_unique($test_array);
echo count($unique_array);相较于上述两种方法,使用array_unique函数的代码量更加简单明了,且具有更加高效的处理速度。
综上所述,PHP提供了多种方法遍历数组得到不同项数量。对于使用for循环方法需要注意数组长度,对于大数量的数组可能会带来额外的资源消耗。使用foreach循环方法可以更加简洁明了地实现该操作。使用array_unique函数则是最为高效的方法之一,同时也是最简单的。读者可以根据不同的需求选择适合自己的方法。
以上就是php怎么遍历数组得到不同的数量的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号