首页 >后端开发 >PHP问题 >php怎么检测二维数组中有几个一维子数组

php怎么检测二维数组中有几个一维子数组

青灯夜游
青灯夜游原创
2022-09-26 19:15:373682浏览

检测步骤:1、定义一个数组并赋值为0,用于储存一维子数组的数量,语法“$num=0;”;2、使用foreach语句循环遍历二维数组的外层数组元素,语法“foreach($arr as $k => $v){//循环体代码}”;3、在循环体中,利用is_array()函数和“++”运算符来统计二维数组中一维子数组的数量,语法“if(is_array($v)){$num++;}”。

php怎么检测二维数组中有几个一维子数组

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

在php中,可以利用foreach语句和is_array()函数来统计二维数组中一维子数组的数量。

实现步骤:

步骤1:定义一个数组并赋值为0,用于储存一维子数组的数量

$num=0;

步骤2:使用foreach语句循环遍历二维数组的外层数组元素

foreach($arr as $k => $v){
//循环体代码
}
  • 遍历给定的 $arr 数组,在每次循环中会将当前数组的值赋给 $v,键名赋给 $k。

步骤3:在循环体中,利用is_array()函数和“++”运算符来统计二维数组中一维子数组的数量

使用is_array()函数检测当前元素是否为数组类型(即是否为一维子数组)

  • 如果是,则使用“++”运算符将$num变量的值加1

if(is_array($v)){
	$num++;
}

完整实现代码:

function f($arr){
	$num=0;
	foreach($arr as $v){
		if(is_array($v)){
			$num++;
		}
	}
	echo "一维子数组的数量为:".$num;
}

调用上面的f($arr)函数

$arr = array(1,2,3,array(4,5,6),7,8,array(9,10)); 
var_dump($arr);
f($arr);

1.png

$arr = array(array(2),array(4),array(6),array(8)); 
var_dump($arr);
f($arr);

2.png


说明:is_array()函数

in_array() 函数搜索数组中是否存在指定的值。语法格式:

in_array ( $search , $array ,$strict)
参数 描述
search 必需。规定要在数组搜索的值。
array 必需。规定要搜索的数组。
strict                 可选。如果该参数设置为 TRUE,则 in_array() 函数检查搜索的数据与数组的值的类型是否相同。

返回值:如果在数组中找到值则返回 TRUE,否则返回 FALSE。    

推荐学习:《PHP视频教程》、《PHP ARRAY

以上是php怎么检测二维数组中有几个一维子数组的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn