layout : post
title : "배열"
category : PHP
PHP에서 배열(array)은 맵(map)으로 이루어진, 순서가 있는 집합
맵(map)은 한 쌍의 키(key)와 값(value)으로 구성
배열의 종류
1차원 배열
다차원 배열
3. 연관 배열
1차원 배열
array()라는 함수를 통해 배열 생성
$배열이름 = array();
배열 요소의 참조
배열 요소에 접근하기 위해 인덱스(index)를 사용
$배열이름[인덱스]
사용하여 접근하며 인덱스로 String 또한 사용 가능하다.
문자열을 사용하는 배열을 연관 배열(associative array)이라 한다.
배열 요소의 추가
선언과 동시에 초기화
$배열이름 = array(배열요소1, 배열요소2, ...);
선언 후 요소 추가
$arr = array(); // 배열 생성
$arr[0] = "apple"; // 배열 요소 추가
$arr[1] = "banana";
$arr[2] = "orange";
해당 배열이 존재 하지 않으면 생성 후 추가된다
$arr[0] = "apple"; // 배열이 존재하지 않으므로, 먼저 배열을 생성한 후에 요소가 추가됨.
$arr[1] = "banana";
$arr[2] = "orange";
인덱스 생략
$arr[] = "apple"; // 배열 인덱스를 생략하여, 순서대로 배열에 추가됨.
$arr[] = "banana";
$arr[] = "orange"
- 위 경우 0부터 인덱스가 시작하며 1씩 증가
배열의 홀(hole)
PHP에서는 배열의 특정 인덱스에만 배열 요소를 추가할 수 있다.
$arr = array(); // 배열의 생성
$arr[10] = "banana"; // 인덱스 10에만 배열 요소를 추가함.
10 이외의 배열은 NULL을 가진다
루프를 이용한 배열로의 접근
$arr = array("apple", "banana", "orange");
for($i = 0; $i < count($arr); $i++){
echo $arr[$i]."<br>";
}
- count() 함수는 배열의 모든 요소 개수를 반환
count() 함수는 배열 요소의 개수를 계산할 때 배열의 홀(hole)을 포함하지 않기 때문에 홀을 가지는 배열에서는 정확한 배열의 길이를 구할 수 없다.
foreach 문을 사용하면 홀이 아닌 배열 요소에만 정확히 접근할 수 있다.
다차원 배열
2차원 이상의 배열을 의미하며, 배열 요소로 또 다른 배열을 사용
// 2차원 배열
$배열이름 = array(
array(),
array(),
...
);
// 3차원 배열
$배열이름 = array(
array(
array(),
array(),
...
),
array(
array(),
array(),
...
),
...
);
$배열이름 = array(
array(배열요소00, 배열요소01, ...),
array(배열요소10, 배열요소11, ...),
...
);
for($row = 0; $row < 3; $row++) {
for($column = 0; $column < count($arr[$row]); $column++){
echo $arr[$row][$column].", ";
}
}
연관 배열
배열의 인덱스를 정수뿐만이 아닌 다양한 타입으로 설정한 배열을 의미
$array = array("apple" => 1000); // 연관 배열 생성과 동시에 초기화
$array["banana"] = 2000; // 생성된 연관 배열에 요소 추가
$array["orange"] = 1500;
'IT > php' 카테고리의 다른 글
2021-01-26-상수 (0) | 2023.02.27 |
---|---|
2021-01-26-상속 (0) | 2023.02.27 |
2021-01-26-변수 (0) | 2023.02.27 |
2021-01-26-기본타입 (0) | 2023.02.27 |
2021-01-26-static (0) | 2023.02.27 |
댓글