步骤:1、使用array_filter()函数过滤数组,语法“array_filter(原数组);”,会返回一个包含所有不为空元素的数组;2、使用count()函数获取原数组和过滤数组的长度,并比较两数组长度是否相等,语法“count(原数组)==count(过滤数组)”,如果相等则数组所有值都不为空,如果不相等则数组中有值为空。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
在php中,可以使用array_filter()和count()函数来判断数组所有值是否都不为空
判断步骤:
步骤1:利用array_filter()函数过滤数组,获取不为空的元素
array_filter()过滤数组,返回符号条件的元素
array_filter函数的功能是利用回调函数来对数组进行过滤,一直都以为用回调函数才能处理,却没有发现手册下面还有一句,如果没有回调函数,那么默认就是删除数组中值为false的项目。
$res=array_filter($arr);
会返回一个包含所有不为空元素的过滤数组
步骤2:使用count()函数获取原数组和过滤数组的长度,并比较两数组的长度是否相等
count(原数组)==count(过滤数组)
如果相等,则数组所有值都不为空(因为没有过滤掉任何一个元素)
如果不相等,则数组中有值为空
完整实例代码:
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,'h',TRUE,FALSE,null,99,100); var_dump($arr); echo "过滤后的数组:"; $res=array_filter($arr); var_dump($res); if(count($arr)==count($res)){ echo "数组所有值都不为空"; }else{ echo "数组中有值为空"; } ?>
说明:
array_filter() 函数
array_filter() 函数用回调函数过滤数组中的元素,会返回一个过滤后的数组。
该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回给结果数组。数组键名保持不变。
array array_filter ( $array , 回调函数 )
推荐学习:《PHP视频教程》
以上是php怎么判断数组所有值是否都不为空的详细内容。更多信息请关注PHP中文网其他相关文章!