현재 위치: > 최신 기사 목록> PHP array_column의 기본 사용에 대한 자세한 설명

PHP array_column의 기본 사용에 대한 자세한 설명

M66 2025-04-28

PHP에서 Array_Column ()은 다차원 배열에서 열에서 데이터를 추출 할 수있는 매우 실용적인 기능입니다. 이 기능은 특히 많은 양의 데이터를 포함하는 배열 처리에 특히 적합하여 특정 열 정보를 신속하게 얻을 수 있도록 도와줍니다. 다음으로 Array_Column () 함수, 매개 변수 분석 및 몇 가지 일반적인 응용 프로그램 시나리오의 사용법을 심층적으로 살펴 봅니다.

array_column () 함수에 대한 기본 소개

Array_Column () 함수는 2 차원 배열에서 열에서 데이터를 추출하는 데 사용되며 일반적으로 다차원 배열에서 지정된 키의 값을 추출하는 데 사용됩니다. 예를 들어, 다양한 사용자 정보가있는 경우 모든 사용자의 이메일 주소 또는 사용자 이름을 추출 할 수 있습니다.

함수 구문

 array_column(array $input, mixed $column_key, mixed $index_key = null): array
  • $ 입력 : 다차원 입력 배열.

  • $ column_key : 반환 할 열의 키 (배열의 색인 또는 연관 배열의 키 이름 일 수 있음).

  • $ index_key : 색인의 열로 선택 사항 (배열의 키 이름이 될 수 있음).

array_column () 함수의 일반적인 사용

1. 다차원 배열에서 단일 열을 추출하십시오

다음과 같은 사용자 데이터 배열이 있고 모든 사용자의 이메일 주소를 얻으려고한다고 가정하십시오.

 $users = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@example.com'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@example.com'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'charlie@example.com']
];

$emails = array_column($users, 'email');
print_r($emails);

출력 결과 :

 Array
(
    [0] => alice@example.com
    [1] => bob@example.com
    [2] => charlie@example.com
)

2. 다차원 배열에서 지정된 열을 추출하고 인덱스를 설정합니다.

때로는 배열에서 열을 추출 할뿐만 아니라 그 열을 새 배열의 색인으로 설정하기를 원합니다. 예를 들어, ID를 색인으로 설정하려면 모든 사용자의 이름을 추출하십시오.

 $users = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@example.com'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@example.com'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'charlie@example.com']
];

$names = array_column($users, 'name', 'id');
print_r($names);

출력 결과 :

 Array
(
    [1] => Alice
    [2] => Bob
    [3] => Charlie
)

3. 사용자 정의 키 이름을 사용하여 열 데이터를 추출하십시오

배열의 키 이름을 직접 사용하지 않고 사용자 정의 키 이름을 사용하여 추출하면 Array_Column () 함수를 통해 구현할 수도 있습니다. 예를 들어, 사용자의 이메일 주소를 추출하고 이름을 색인으로 설정하십시오.

 $users = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@example.com'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@example.com'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'charlie@example.com']
];

$emails = array_column($users, 'email', 'name');
print_r($emails);

출력 결과 :

 Array
(
    [Alice] => alice@example.com
    [Bob] => bob@example.com
    [Charlie] => charlie@example.com
)

Array_Column () 의 고급 응용 프로그램 시나리오

1. 다차원 배열에서 데이터를 추출하고 필터합니다

때로는 특정 열을 추출 할 때 동시에 데이터를 필터링해야합니다. array_column () 함수 자체는 필터링을 지원하지 않지만 다른 기능과 함께이를 수행 할 수 있습니다.

예를 들어, 금액이 100보다 큰 모든 주문 ID를 추출하려는 주문 배열이 있다고 가정합니다.

 $orders = [
    ['order_id' => 1, 'amount' => 50],
    ['order_id' => 2, 'amount' => 150],
    ['order_id' => 3, 'amount' => 200],
    ['order_id' => 4, 'amount' => 75]
];

$filtered_orders = array_filter($orders, function($order) {
    return $order['amount'] > 100;
});

$order_ids = array_column($filtered_orders, 'order_id');
print_r($order_ids);

출력 결과 :

 Array
(
    [1] => 2
    [2] => 3
)

2. 배열 병합

array_column ()은 열 데이터를 추출 할 때 동시에 데이터 처리를 달성하기 위해 Array_Map () 과 같은 함수와 함께 사용될 수 있습니다.

주목해야 할 것

  1. 인덱싱 문제 : Array_Column ()은 지정된 열의 값 만 반환하며 원래 배열의 키를 유지하지 않습니다. 색인을 유지 해야하는 경우 추가 처리를 고려할 수 있습니다.

  2. 성능 문제 : Array_Column () 은 비교적 효율적인 기능이지만 매우 큰 배열을 다룰 때 성능이 여전히 중요합니다. 거대한 데이터 세트에서 작동 해야하는 경우 다른 최적화 된 방법을 고려할 수 있습니다.

요약

Array_column () 함수는 매우 강력한 도구이며 PHP에서 종종 다차원 배열에서 특정 열에서 데이터를 추출하는 데 사용됩니다. 매개 변수를 유연하게 사용하면 배열의 열 데이터를 쉽게 추출하고 인덱스 및 필터링 조건을 사용자 정의 할 수 있습니다. 사용자 데이터, 주문 데이터 또는 다른 형태의 복잡한 배열을 처리하든 Array_column ()은 코드를 크게 단순화하고 효율성을 향상시키는 데 도움이 될 수 있습니다.