[PHP 기본문법] 배열

배열의 개념

배열은 PHP에서 가장 기본적이고 중요한 데이터 구조입니다. 배열은 여러 개의 값을 하나의 변수에 저장할 수 있게 해주는 컨테이너입니다. 각 값은 인덱스를 사용하여 접근할 수 있습니다. 배열은 다양한 유형의 데이터를 저장할 수 있으며, 크기가 동적으로 조정될 수 있습니다.

배열의 생성과 초기화

PHP에서 배열을 생성하고 초기화하는 방법은 다양합니다. 아래는 몇 가지 예시입니다:

phpCopy code// 빈 배열 생성
$emptyArray = array();

// 인덱스 배열 생성
$indexArray = array('apple', 'banana', 'orange');

// 연관 배열 생성
$associativeArray = array('name' => 'John', 'age' => 25, 'city' => 'New York');

// 미리 정의된 배열 생성
$predefinedArray = [1, 2, 3, 4, 5];

배열 값 접근

배열의 값에 접근하기 위해서는 해당 값의 인덱스를 사용합니다. 인덱스는 0부터 시작하며, 배열 요소에 할당된 값에 접근하려면 인덱스를 사용하여 변수 이름 뒤에 대괄호([])를 추가합니다.

phpCopy code$fruits = array('apple', 'banana', 'orange');
echo $fruits[0];  // 출력: "apple"
echo $fruits[1];  // 출력: "banana"
echo $fruits[2];  // 출력: "orange"

배열의 크기와 반복

배열의 크기(요소의 개수)를 얻으려면 count() 함수를 사용합니다. 배열을 반복하려면 for 루프나 foreach 루프를 사용할 수 있습니다.

phpCopy code$fruits = array('apple', 'banana', 'orange');
$length = count($fruits);  // 배열의 크기

// for 루프를 사용한 배열 반복
for ($i = 0; $i < $length; $i++) {
    echo $fruits[$i];
}

// foreach 루프를 사용한 배열 반복
foreach ($fruits as $fruit) {
    echo $fruit;
}

배열의 함수와 메서드

PHP는 배열을 다루기 위한 많은 내장 함수와 메서드를 제공합니다. 몇 가지 유용한 함수와 메서드 예시는 다음과 같습니다:

  • array_push(): 배열의 끝에 요소를 추가합니다.
  • array_pop(): 배열의 마지막 요소를 제거하고 반환합니다.
  • array_merge(): 배열들을 병합합니다.
  • array_slice(): 배열의 일부분을 추출합니다.
  • array_search(): 배열에서 값을 검색하고 해당 값을 가지는 인덱스를 반환합니다.

아래는 함수와 메서드의 사용 예시입니다:

phpCopy code$fruits = array('apple', 'banana', 'orange');

// array_push() 함수를 사용하여 배열에 요소 추가
array_push($fruits, 'grape', 'melon');
// 결과: ['apple', 'banana', 'orange', 'grape', 'melon']

// array_pop() 함수를 사용하여 배열에서 마지막 요소 제거
$lastFruit = array_pop($fruits);
// 결과: 'melon', $fruits 배열은 ['apple', 'banana', 'orange', 'grape']

// array_merge() 함수를 사용하여 배열 병합
$moreFruits = array('strawberry', 'kiwi');
$allFruits = array_merge($fruits, $moreFruits);
// 결과: ['apple', 'banana', 'orange', 'grape', 'strawberry', 'kiwi']

// array_slice() 함수를 사용하여 배열 일부 추출
$slicedFruits = array_slice($allFruits, 1, 3);
// 결과: ['banana', 'orange', 'grape']

// array_search() 함수를 사용하여 값 검색
$index = array_search('banana', $allFruits);
// 결과: 1

성능 향상을 위한 팁

PHP 배열의 성능을 향상시키기 위해 몇 가지 팁과 노하우가 있습니다:

  1. 대용량 데이터를 다룰 때는 연관 배열보다 인덱스 배열을 사용하는 것이 성능상 유리합니다.
  2. isset() 함수를 사용하여 배열 요소의 존재 여부를 확인하고, 에러를 방지할 수 있습니다.
  3. 배열을 반복할 때 for 루프를 사용하는 것이 foreach 루프보다 빠를 수 있습니다.
  4. 배열을 정렬해야 할 때는 sort()asort() 함수를 사용하여 정렬할 수 있습니다.

아래는 성능 향상을 위한 팁에 대한 예시 코드입니다:

phpCopy code$fruits = array('apple', 'banana', 'orange');

// 대용량 데이터를 다룰 때는 인덱스 배열을 사용
$indexArray = array();
$indexArray[] = 'apple';
$indexArray[] = 'banana';
$indexArray[] = 'orange';

// isset() 함수를 사용하여 배열 요소의 존재 여부 확인
if (isset($fruits[0])) {
    echo $fruits[0];
}

// for 루프를 사용하여 배열 반복
$length = count($fruits);
for ($i = 0; $i < $length; $i++) {
    echo $fruits[$i];
}

// 배열 정렬을 위해 sort() 함수 사용
sort($fruits);

PHP 배열은 여러 개의 값을 저장하고 접근할 수 있는 유용한 데이터 구조입니다. 배열은 생성, 초기화, 값 접근, 크기 및 반복에 대한 다양한 기능을 제공하며, PHP는 배열을 다루기 위한 다양한 함수와 메서드를 제공합니다. 대용량 데이터를 다룰 때는 인덱스 배열을 사용하고, isset() 함수를 사용하여 배열 요소의 존재 여부를 확인하는 것이 좋습니다. for 루프를 사용하여 배열을 반복하고, 배열 정렬에는 내장 함수를 활용할 수 있습니다. 이러한 팁과 노하우를 활용하여 PHP 배열을 효과적으로 다룰 수 있습니다.