PHP 다차원 배열

이 튜토리얼의 이전 장에서는 배열이 단순한 수/값 쌍의 목록이라는 것을 알고 있습니다.

그러나 때로는 하나 이상의 키로 값을 저장하고 싶을 때도 있습니다.

다중 차원 배열을 사용하여 저장할 수 있습니다.

PHP - 다중 차원 배열

다중 차원 배열은 하나 이상의 배열을 포함하는 배열을 말합니다.

PHP는 양, 삼, 네, 다섯 단계 또는 그 이상의 다중 차원 배열을 이해할 수 있습니다. 그러나 많은 사람들에게는 삼차원 이상의 깊이의 배열을 관리하기 어렵습니다.

주의사항:배열의 차원은 선택해야 할 인덱스의 수를 나타냅니다.

  • 양자원 배열의 경우, 요소를 선택하기 위해 두 가지 인덱스가 필요합니다
  • 삼차원 배열의 경우, 요소를 선택하기 위해 세 가지 인덱스가 필요합니다

PHP - 양자원 배열

양자원 배열은 배열의 배열입니다(삼차원 배열은 배열의 배열의 배열입니다).

먼저, 아래 표를 보겠습니다:

브랜드 재고 판매량
볼보 33 20
BMW 17 15
사압 5 2
랜드로버 15 11

우리는 이렇게 양자원 배열에 데이터를 저장할 수 있습니다:

$cars = array
  (
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15)
  );

이 두차원 배열은 네 개의 배열을 포함하고 있으며, 두 인덱스(인덱스)를 가지고 있습니다: 행과 열.

cars 배열의 요소에 접근하려면, 두 인덱스(행과 열)를 사용해야 합니다:

예제

<?php
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
for ($row = 0; $row < 4; $row++) {
  echo "<p><b>Row number $row</b></p>";
  echo "<ul>";
  for ($col = 0; $col < 3; $col++) {
    echo "<li>".$cars[$row][$col]."</li>";
  }
  echo "</ul>";
}
?>

실행 예제