PHP에서 다차원 배열은 하나 이상의 배열을 포함하는 배열을 의미합니다. 예를 들어 2차원 배열은 내부에 여러 개의 1차원 배열이 정의된 1차원 배열입니다. 배열의 크기는 요소를 선택하는 데 필요한 인덱스 수를 나타냅니다. 예를 들어 2차원 배열에는 요소를 선택하는 데 두 개의 인덱스가 필요하고, 3차원 배열에는 요소를 선택하는 데 세 개의 인덱스가 필요합니다.
이 튜토리얼의 운영 환경: windows7 시스템, PHP8 버전, DELL G3 컴퓨터
PHP - 다차원 배열
다차원 배열은 하나 이상의 배열을 포함하는 배열을 의미합니다.
PHP는 2, 3, 4, 5레벨 또는 그 이상의 레벨로 구성된 다차원 배열을 이해할 수 있습니다. 그러나 3개 수준 이상의 배열은 대부분의 사람들이 관리하기 어렵습니다.
참고: 배열의 크기는 선택해야 하는 요소의 인덱스 수를 나타냅니다.
2차원 배열의 경우 요소를 선택하려면 두 개의 인덱스가 필요합니다
3차원 배열의 경우 요소를 선택하려면 세 개의 인덱스가 필요합니다
PHP - 2차원 배열
2차원 배열은 배열의 배열입니다(3차원 배열은 배열의 배열입니다).
먼저 아래 표를 살펴보겠습니다.
Brand | Stock | Sales |
---|---|---|
Volvo | 33 | 20 |
BMW | 17 | 15 |
사브 | 5 | 2 |
랜드로버 | 15 | 11 |
위 테이블의 데이터를 다음과 같이 2차원 배열에 저장할 수 있습니다.
$cars = array ( array("Volvo",22,18), array("BMW",15,13), array("Saab",5,2), array("Land Rover",17,15) );
이제 이 2차원 배열에는 4개의 배열이 포함되어 있으며 행과 열이라는 두 개의 인덱스(아래 첨자)가 있습니다.
$cars 배열의 요소에 액세스하려면 두 개의 인덱스(행과 열)를 사용해야 합니다.
Instance
<?php header("Content-type:text/html;charset=utf-8"); $cars = array ( array("Volvo",33,20), array("BMW",17,15), array("Saab",5,2), array("Land Rover",15,11) ); echo $cars[0][0].": 库存:".$cars[0][1].", 已售:".$cars[0][2].".<br>"; echo $cars[1][0].": 库存:".$cars[1][1].", 已售:".$cars[1][2].".<br>"; echo $cars[2][0].": 库存:".$cars[2][1].", 已售:".$cars[2][2].".<br>"; echo $cars[3][0].": 库存:".$cars[3][1].", 已售:".$cars[3][2].".<br>"; ?>
For 루프 내부에 다른 For 루프를 사용하여 요소를 가져올 수도 있습니다. $cars 배열(여전히 두 개의 인덱스를 사용해야 함):
<?php header("Content-type:text/html;charset=utf-8"); $cars = array ( array("Volvo",33,20), array("BMW",17,15), array("Saab",5,2), array("Land Rover",15,11) ); for ($row = 0; $row < 4; $row++) { echo "<p><b>行数 $row</b></p>"; echo "<ul>"; for ($col = 0; $col < 3; $col++) { echo "<li>".$cars[$row][$col]."</li>"; } echo "</ul>"; } ?>
2D 배열 생성 방법:
2D 배열은 1D 배열과 동일한 방식으로 생성됩니다. 그냥 교체하면 됩니다. 배열이 있는 배열의 요소입니다. "배열 요소에 직접 값을 할당하는 방법"과 "array() 함수"라는 두 가지 방법도 있습니다. 아래에서는 이 두 가지 방법을 실제 코드 예제를 통해 자세히 소개하겠습니다.
1 배열 요소에 값을 직접 할당
"$array 변수 이름 [행 아래 첨자] [열 아래 첨자] = 값;
" 형식으로 생성하고 초기화할 수 있습니다. 2차원 배열 $数组变量名[行下标] [列下标]= 值;
”的格式来创建并初始化二维数组
<?php header("Content-type:text/html;charset=utf-8"); $array[0]['姓名'] = '张三'; $array[0]['年龄'] = '25'; $array[0]['性别'] = '男'; $array[1]['姓名'] = '李四'; $array[1]['年龄'] = '21'; $array[1]['性别'] = '男'; $array[2]['姓名'] = '娜娜'; $array[2]['年龄'] = '22'; $array[2]['性别'] = '女'; var_dump($array); ?>
输出结果:
二维数组的行下标
和列下标
<?php header("Content-type:text/html;charset=utf-8"); $array[0][] = '张三'; $array[0][] = '25'; $array[0][] = '男'; $array[1][] = '李四'; $array[1][] = '21'; $array[1][] = '男'; $array[2][] = '娜娜'; $array[2][] = '22'; $array[2][] = '女'; var_dump($array); ?>
행 첨자
와 열 첨자
는 비어 있을 수 있습니다(즉, 특정 인덱스 값이 지정되지 않음). 기본값은 숫자 인덱스이며 인덱스 값은 기본적으로 0부터 시작하여 순차적으로 증가합니다. 예 1: "열 첨자"가 비어 있음
<?php header("Content-type:text/html;charset=utf-8"); $array[]['姓名'] = '张三'; $array[]['年龄'] = '25'; $array[]['性别'] = '男'; $array[]['姓名'] = '李四'; $array[]['年龄'] = '21'; $array[]['性别'] = '男'; $array[]['姓名'] = '娜娜'; $array[]['年龄'] = '22'; $array[]['性别'] = '女'; var_dump($array); ?>
출력 결과:
예 2: "행 첨자"가 비어 있음
<?php header("Content-type:text/html;charset=utf-8"); $array[][] = '张三'; $array[][] = '25'; $array[][] = '男'; $array[][] = '李四'; $array[][] = '21'; $array[][] = '男'; $array[][] = '娜娜'; $array[][] = '22'; $array[][] = '女'; var_dump($array); ?>
출력 결과:
예 3: "행 첨자" 모두 "subscript" 및 "column subscript"가 비어 있습니다
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("张三",25,"男"), array("李四",21,"男"), array("娜娜",22,"女") ); var_dump($array); ?>
출력 결과:
2. array() 함수를 사용하세요
array() 함수를 사용하여 2차원 배열을 선언하는 것은 다음과 같습니다. 1차원 배열.
1) 인덱스 배열
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( "学生1"=>array("张三",25,"男"), "学生2"=>array("李四",21,"男"), "学生3"=>array("娜娜",22,"女") ); var_dump($array); ?>
예 1:
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( "学生1"=>array("姓名"=>"张三","年龄"=>25,"性别"=>"男"), "学生2"=>array("姓名"=>"李四","年龄"=>21,"性别"=>"男"), "学生3"=>array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女") ); var_dump($array); ?>
출력 결과:
예 2:
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("姓名"=>"张三","年龄"=>25,"性别"=>"男"), array("姓名"=>"李四","年龄"=>21,"性别"=>"男"), array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女") ); echo $array[0]['姓名'].'同学的年龄为'.$array[0]['年龄'].'岁'; ?>
출력 결과:
지침: 2차원 배열의 요소를 얻으려면
각 차원의 첨자를 표시하면 됩니다.张三同学的年龄为25岁
<?php header("Content-type:text/html;charset=utf-8"); $array = array( '安徽' => array( '合肥'=>array('蜀山区','长丰县','肥东'), '宿州'=>array('墉桥区','灵璧县','泗县') ), '河南' => array( '洛阳'=>array('西工区','老城区','孟津县'), '郑州市'=>array('中原区','金水区') ) ); var_dump($array); ?>
예: 3차원 배열 만들기
rrreee🎜🎜추천 학습: "🎜PHP 비디오 튜토리얼 🎜"🎜위 내용은 PHP 다차원 배열이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!