这篇“php如何判断数组是否为二维数组”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php如何判断数组是否为二维数组”文章吧。
两种判断方法:1、利用count()函数比较省略第二参数和不省略第二参数时,获取的长度是否一样即可,语法“count($arr)!=count($arr,1)”,返回值为true则是二维数组,反之则不是。2、用foreach语句循环遍历数组,在循环体中用is_array()判断元素值是否为数组类型,如果都不是则不是二维数组,如果有一个是则是二维数组。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
php判断数组是否为二维数组的两种方法
方法1:利用count()函数来判断
count()函数计算数组中的单元数目或对象中的属性个数
count ( mixed $var [, int $mode ] )
$mode:为可选参数,可以省略。
如果省略 $mode 参数,或者将其设置为 COUNT_NORMAL 或者 0,count() 函数将不检测多维数组;
如果 $mode 设置为 COUNT_RECURSIVE 或者 1,count() 函数将递归计算数组中元素的个数,对于计算多维数组的元素个数尤为有用。
如果省略 $mode 参数,count则不检测多维数组,将只获取一维的元素个数。
因此只需要比较一下省略$mode参数和不省略$mode参数时,获取的长度是否一样即可判断是否为二维数组。
count($arr) != count($arr, 1)
如果不相等(返回值为true),则是二维数组
如果相等(返回值为false),则不是二维数组
<?php
header('content-type:text/html;charset=utf-8');
$arr = array(1,array(2,4),6);
var_dump($arr);
if (count($arr) != count($arr, 1)) {
echo '是二维数组';
} else {
echo '不是二维数组';
}
?>
方法2:foreach语句+is_array()函数
使用foreach语句循环遍历数组
在循环体中,使用is_array()函数判断元素值是否为数组类型,如果都不是则不是二维数组,如果有一个是则是二维数组
<?php
header("content-type:text/html;charset=utf-8");
$arr = array(1,2,3,4,5);
var_dump($arr);
$con=0;
foreach($arr as $v){
if(is_array($v)){
$con=1;
break;
}else{
$con=0;
}
}
if($con==1){
echo "是二维数组";
}else{
echo "不是二维数组";
}
?>
以上就是关于“php如何判断数组是否为二维数组”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。