>백엔드 개발 >PHP 문제 >PHP에서 배열이 2차원 배열인지 확인하는 방법

PHP에서 배열이 2차원 배열인지 확인하는 방법

青灯夜游
青灯夜游원래의
2022-09-07 19:25:503529검색

두 가지 판단 방법: 1. count() 함수를 사용하여 두 번째 매개변수가 생략된 경우와 두 번째 매개변수가 생략되지 않은 경우 얻은 길이가 동일한지 비교합니다. 구문은 "count($arr)!=count입니다. ($arr,1 )", 반환 값이 true이면 2차원 배열이고 그 반대도 마찬가지입니다. 2. foreach 문을 사용하여 배열을 반복하고, 루프 본문에서 is_array()를 사용하여 요소 값이 배열 유형이 아닌지 확인합니다. 하나는 2차원 배열입니다.

PHP에서 배열이 2차원 배열인지 확인하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, DELL G3 컴퓨터

배열이 2차원 배열인지 확인하는 PHP의 두 가지 방법

방법 1 : count() 함수를 사용하여 배열의 단위 수 또는 객체

count ( mixed $var [, int $mode ] )

$mode의 속성 수를 계산하는

count() 함수를 결정합니다. $mode는 선택적 매개변수이며 생략 가능합니다.

  • $mode 매개변수가 생략되거나 COUNT_NORMAL 또는 0으로 설정된 경우 count() 함수는 다차원 배열을 감지하지 않습니다.

  • $mode가 COUNT_RECURSIVE 또는 1로 설정된 경우 count() 함수는 배열을 재귀적으로 계산합니다. 의 요소 수는 다차원 배열의 요소 수를 계산하는 데 특히 유용합니다.

$mode 매개변수를 생략하면 count는 다차원 배열을 감지하지 못하고 한 차원의 요소 수만 가져옵니다.

그러므로 $mode 매개변수를 생략했을 때 얻은 길이와 $mode 매개변수를 생략하지 않았을 때 얻은 길이가 동일한지 비교하면 2차원 배열인지 판단할 수 있습니다.

count($arr) != count($arr, 1)
  • 같지 않으면(반환 값이 true) 2차원 배열입니다.

  • 같으면(반환 값이 false) 2차원 배열이 아닙니다

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr = array(1,array(2,4),6); 
var_dump($arr);
if (count($arr) != count($arr, 1)) {
    echo &#39;是二维数组&#39;;
} else {
    echo &#39;不是二维数组&#39;;
} 
?>

PHP에서 배열이 2차원 배열인지 확인하는 방법

방법 2: foreach 문 + is_array() 함수

  • foreach 문을 사용하여 배열을 반복합니다.

  • 루프 본문에서 is_array() 함수를 사용하여 요소 값이 다음과 같은지 확인합니다. 배열 유형이 아닌 경우 2차원 배열이 아니며, 있는 경우 2차원 배열입니다

<?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에서 배열이 2차원 배열인지 확인하는 방법

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 배열이 2차원 배열인지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.