배열(PHP)

최근 편집: 2023년 1월 1일 (일) 01:52

PHP에서 배열(Array)은 여러 변수들을 한 이름으로 묶어 저장할 수 있는 자료형이다.

선언

다음과 같이 여러 방법으로 선언할 수 있다. 이 선언은 "짧은 배열 문법"을 사용한다.

$array1 = [
    "foo", "bar"
];

$array2 = [
    "foo" => "bar",
    "bar" => "foo"
];

$array3 = [
    "foo" => "bar",
    "bar" => "foo",
];

마지막 예시는 트레일링 콤마를 사용한 것이다. PHP의 배열 선언에서 트레일링 콤마는 선택 사항이다.

array() 함수 사용

PHP 5.4.0 이전 버전을 사용한다면 위와 같은 "짧은 배열 문법"을 사용할 수 없으며 대신 array() 함수를 호출하여야 한다.[1]

$array1 = array( [
    "foo", "bar",
] );

$array2 = array( [
    "foo" => "bar",
    "bar" => "foo"
] );

접근

배열의 각 원소에 접근하기 위해서는 다음 문법을 사용한다.

echo $array1[0];

echo $array2['foo'];

for ( $i = 0; $i < count( $array1 ) ; $i++ ) {
    echo $array1[$i] . "\n";
}

혹은 foreach 문을 사용할 수도 있다.

foreach ( $array1 as $element ) {
    echo $element . "\n";
}

foreach ( $array2 as $key => $value ) {
    echo "key is $key and value is $value\n";
}

다른 언어와 차이

PHP에서는 리스트해시를 명확히 구분하지 않고 모두 해싱을 통해 저장한다. 따라서 각 원소들은 실제 메모리에서 연속되지 않은 장소에 저장되어 있을 수 있다.

출처

  1. “PHP: PHP 5.4.0 Release Announcement”. 2021년 7월 4일에 확인함.