php怎么知道数组有多少个值_PHP统计数组包含值的个数

admin 百科 14
要统计PHP数组中非空值个数,可用五种方法:一、array_filter()配合count()过滤默认空值;二、foreach手动判断;三、array_reduce()函数式累积;四、array_filter()加ARRAY_FILTER_USE_BOTH联合键值判断;五、array_keys()与array_intersect_key()保留原始键名统计。

php怎么知道数组有多少个值_PHP统计数组包含值的个数-第1张图片-佛山资讯网

如果您需要获取PHP数组中实际包含的值的数量,必须区分数组的总长度与非空值的数量。以下是统计数组中非空值个数的多种方法:

一、使用array_filter()配合count()

该方法先过滤掉所有被视为“空”的值(如null、false、0、""、array()等),再统计剩余元素个数。它适用于需要排除逻辑上为空的值的场景。

1、定义目标数组,例如:$arr = [1, "", null, "hello", 0, false, 42];

2、调用array_filter()不传回调函数,默认移除所有空值:$filtered = array_filter($arr);

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

3、对过滤后的数组使用count():$count = count($filtered);

4、输出结果:echo $count; 此时输出为3(仅保留1、"hello"、42)

二、使用foreach循环手动计数

该方法提供完全可控的判断逻辑,可自定义“什么是空值”,例如保留0和"0",仅排除null和空字符串。

1、初始化计数器变量:$count = 0;

2、遍历数组每个元素:foreach ($arr as $value) {

3、添加自定义判断条件,例如:if ($value !== null && $value !== "") { $count++; }

4、循环结束后,$count即为满足条件的值的个数 此方式可精确控制“空”的定义

三、使用array_reduce()进行累积计数

该方法以函数式编程方式实现统计,适合嵌套逻辑或需复用判断规则的场景。

标签: php 回调函数 键值对 red

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~