步骤:1、用array_filter()和empty()过滤数组,语法“function f($n){return(empty($n)==0);}$r=array_filter($a,"f");”,会返回一个包含所有不为空元素的数组;2、使用count()获取原数组和过滤数组的长度,并比较两数组长度是否相等,语法“count($a)==count($r)”,如果相等则都不为空。
前端(vue)入门到精通课程:进入学习
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
在php中,可以使用array_filter()、count()和empty()函数来判断数组所有值是否都不为空
判断步骤:
步骤1:利用array_filter()和empty()函数过滤数组,获取不为空的元素
empty()函数用于判断数组元素是否为空
array_filter()过滤数组,返回符号条件的元素
function f($n){ return(empty($n)==0); } $res=array_filter($arr,"f");
会返回一个包含所有不为空元素的过滤数组
步骤2:使用count()函数获取原数组和过滤数组的长度,并比较两数组的长度是否相等
count(原数组)==count(过滤数组)
如果相等,则数组所有值都不为空(因为没有过滤掉任何一个元素)
如果不相等,则数组中有值为空
完整实例代码:
<?php header('content-type:text/html;charset=utf-8'); function f($n){ return(empty($n)==0);//返回不为空的元素 } $arr=array(1,'h',TRUE,FALSE,null,99,100); var_dump($arr);echo "过滤后的数组:"; $res=array_filter($arr,"f"); var_dump($res);if(count($arr)==count($res)){ echo "数组所有值都不为空"; }else{ echo "数组中有值为空"; } ?>
说明:
1、array_filter() 函数
array_filter() 函数用回调函数过滤数组中的元素,会返回一个过滤后的数组。
该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回给结果数组。数组键名保持不变。
array array_filter ( $array , 回调函数 )
2、empty() 函数
empty() 函数用于检查一个变量是否为空。
empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。
empty ( $var )
返回值:当 var 存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE。
以下的变量会被认为是空的:
"" (空字符串)
0 (作为整数的0)
0.0 (作为浮点数的0)
"0" (作为字符串的0)
NULL
FALSE
array() (一个空数组)
$var; (一个声明了,但是没有值的变量)
以上就是php怎么判断数组所有值是否都不为空的详细内容,更多请关注龙方网络其它相关文章!