PHP에서 Array_Column 함수는 다차원 배열에서 단일 열의 값을 추출하는 데 사용됩니다. 특히 2D 배열에서 특정 필드의 값을 추출하려는 경우 매우 유용합니다. 그렇다면 두 개의 다른 필드의 값을 새 배열로 어떻게 병합합니까? Array_Column을 사용 하여이 기능을 구현하는 방법은 다음과 같습니다.
각 요소에 사용자의 ID 와 이름이 포함 된 배열이 있다고 가정 해 봅시다.이 값을 추출하여 새 배열로 병합하려고합니다.
<?php
// 원시 데이터 배열
$data = [
['id' => 1, 'name' => 'Alice'],
['id' => 2, 'name' => 'Bob'],
['id' => 3, 'name' => 'Charlie']
];
// 사용 array_column 발췌 'id' 그리고 'name'
$ids = array_column($data, 'id');
$names = array_column($data, 'name');
// 두 필드의 값을 병합하십시오
$merged = array_map(function($id, $name) {
return ['id' => $id, 'name' => $name];
}, $ids, $names);
// 병합 배열을 출력하십시오
print_r($merged);
?>
데이터 배열 : 먼저 ID 및 이름 필드가 포함 된 2 차원 배열 $ 데이터를 정의합니다.
데이터 추출물 : Array_Column 함수를 사용하여 $ Data 에서 ID 및 이름 필드의 값을 추출하고 $ ID 및 $ 이름 배열에 저장하십시오.
MERGE ARRAY : Array_Map 함수를 통해 $ ID 및 $ 이름 배열의 값을 새로운 연관 배열로 하나씩 순서대로 병합합니다. 형식은 [ 'id'=> $ id, 'name'=> $ name] 입니다.
출력 결과 : 마지막으로 Print_R 함수를 사용하여 병합 배열을 출력합니다.
Array
(
[0] => Array
(
[id] => 1
[name] => Alice
)
[1] => Array
(
[id] => 2
[name] => Bob
)
[2] => Array
(
[id] => 3
[name] => Charlie
)
)
Array_Column 함수 및 Array_Map을 사용하면 배열의 다른 필드를 매우 편리하게 새로운 배열로 병합 할 수 있습니다. Array_Column 에 의해 필드를 추출하는 프로세스는 간단하고 빠르며 Array_Map은 해당 규칙에 따라 값을 두 배열로 병합하는 데 도움이됩니다. 이 접근법은 두 필드를 병합하는 데 적합 할뿐만 아니라 여러 필드를 쉽게 병합 할 수 있습니다.