PHP의 array_column() 함수 사용법에 대한 자세한 설명

PHPz
풀어 주다: 2023-06-27 16:18:01
원래의
5413명이 탐색했습니다.

PHP에서는 배열을 처리하고 연산해야 하는 경우가 많습니다. 때로는 다차원 배열에서 특정 데이터 열을 가져와야 하는 경우 array_column() 함수를 사용하여 이를 달성할 수 있습니다. 이번 글에서는 array_column() 함수의 사용법을 자세히 소개하겠습니다.

1. array_column() 함수는 무엇인가요?

array_column()은 다차원 배열에서 지정된 데이터 열을 가져오는 데 사용되는 PHP 함수입니다. 이 함수는 PHP 5.5에서 도입되었으며 연관 배열 및 인덱스 배열을 지원합니다.

함수 프로토타입:
array_column ( array $array , Mixed $column_key [, Mixed $index_key = null ] ) : array

매개변수 설명:
$array: 연산할 다차원 배열
$column_key: the 획득할 열 키 이름 또는 값
$index_key: 선택적 매개변수, 이 값을 지정하면 반환되는 배열의 키 이름으로 사용됩니다.

2. 사용 예

array_column() 함수의 몇 가지 사용 예를 살펴보겠습니다.

  1. 인덱스 배열

일부 사용자 정보를 저장하는 $users 인덱스 배열이 있고 여기에서 모든 사용자의 이름을 가져오고 싶다고 가정해 보겠습니다. 이는 다음 코드를 통해 달성할 수 있습니다.

$users = array(0 => array('id'=>1, 'name'=>'Tom', 'email'=>'tom@example.com'),
               1 => array('id'=>2, 'name'=>'Jerry', 'email'=>'jerry@example.com'),
               2 => array('id'=>3, 'name'=>'Mike', 'email'=>'mike@example.com'));

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

print_r($names);
로그인 후 복사

출력 결과는 다음과 같습니다.

Array (
    [0] => Tom
    [1] => Jerry
    [2] => Mike
)
로그인 후 복사
  1. Associative array

배열이 연관 배열인 경우 동일한 방식으로 지정된 데이터 열을 얻을 수 있습니다.

예를 들어, 학생에 대한 일부 정보가 포함된 연관 배열 $students가 있습니다. 우리는 모든 학생의 나이를 얻고 싶습니다.

$students = array('Tom' => array('age'=>20, 'gender'=>'male', 'city'=>'Beijing'),
                  'Jerry' => array('age'=>21, 'gender'=>'female', 'city'=>'Shanghai'),
                  'Mike' => array('age'=>19, 'gender'=>'male', 'city'=>'Guangzhou'));

$ages = array_column($students, 'age');

print_r($ages);
로그인 후 복사

출력 결과는 다음과 같습니다.

Array (
    [Tom] => 20
    [Jerry] => 21
    [Mike] => 19
)
로그인 후 복사
  1. 여러 키 값 가져오기 ​​

다차원 배열에서 여러 키 값을 얻으려면 얻을 키 이름을 배열에 넣고 array_column() 함수에 두 번째 매개 변수로 전달할 수 있습니다.

예를 들어, 여러 도시의 온도 데이터가 포함된 $온도 배열이 있습니다. 각 도시의 평균 기온과 최대 기온을 얻으려면 다음과 같이 할 수 있습니다.

$temperatures = array(
    array('city'=>'Beijing', 'average'=>20, 'highest'=>28),
    array('city'=>'Shanghai', 'average'=>23, 'highest'=>30),
    array('city'=>'Guangzhou', 'average'=>25, 'highest'=>32)
);

$infos = array_column($temperatures, array('average', 'highest'), 'city');

print_r($infos);
로그인 후 복사

출력 결과는 다음과 같습니다.

Array (
    [Beijing] => Array (
        [average] => 20
        [highest] => 28
    )
    [Shanghai] => Array (
        [average] => 23
        [highest] => 30
    )
    [Guangzhou] => Array (
        [average] => 25
        [highest] => 32
    )
)
로그인 후 복사
  1. 반환 지정 배열의 키 이름

때때로 지정된 열의 데이터를 가져올 때 반환된 배열의 키 이름을 지정하고 싶을 때가 있습니다. array_column() 함수의 세 번째 매개변수에 지정할 수 있습니다.

예를 들어 이전 예에서는 반환된 배열의 키 이름으로 "평균 온도"와 "최대 온도"를 사용하려고 합니다.

$temperatures = array(
    array('city'=>'Beijing', 'average'=>20, 'highest'=>28),
    array('city'=>'Shanghai', 'average'=>23, 'highest'=>30),
    array('city'=>'Guangzhou', 'average'=>25, 'highest'=>32)
);

$infos = array_column($temperatures, array('average', 'highest'), 'city');

$infos = array_map(function($v){return ['平均气温'=>$v[0], '最高气温'=>$v[1]];}, $infos);

print_r($infos);
로그인 후 복사

출력 결과는 다음과 같습니다.

Array (
    [Beijing] => Array (
        [平均气温] => 20
        [最高气温] => 28
    )
    [Shanghai] => Array (
        [平均气温] => 23
        [最高气温] => 30
    )
    [Guangzhou] => Array (
        [平均气温] => 25
        [最高气温] => 32
    )
)
로그인 후 복사

3 . 결론

array_column( ) 함수는 다차원 배열에서 지정된 데이터 열을 쉽게 얻을 수 있으며 사용 방법이 간단하고 명확합니다. 실제 개발에서는 이 기능을 최대한 활용하여 어레이 처리의 효율성과 정확성을 향상시킬 수 있습니다.

위 내용은 PHP의 array_column() 함수 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿