공유 열 값으로 2D 배열 병합
두 개의 다차원 배열을 공유 값으로 결합하는 것은 일반적인 프로그래밍 작업일 수 있습니다. 중첩 루프와 조건부 검사를 사용하는 기존의 반복 접근 방식은 안정적이지만 코드가 장황하고 비효율적일 수 있는 경우가 많습니다. 이 기사에서는 기본 PHP 배열 함수를 사용하는 우아한 솔루션을 살펴봅니다.
다음 두 배열을 고려하세요.
$array1 = [ ['rank' => '579', 'id' => '1'], ['rank' => '251', 'id' => '2'], ]; $array2 = [ ['size' => 'S', 'status' => 'A', 'id' => '1'], ['size' => 'L', 'status' => 'A', 'id' => '2'], ];
목표는 공유 'id' 값을 기반으로 이러한 배열을 병합하여 다음 결과:
[ ['size' => 'S', 'status' => 'A', 'id' => '1', 'rank' => '579'], ['size' => 'L', 'status' => 'A', 'id' => '2', 'rank' => '251'], ]
해결책 1: array_merge_recursive
PHP의 array_merge_recursive() 함수를 사용하면 배열을 병합하고 요소를 일치하는 키와 재귀적으로 결합할 수 있습니다.
$mergedArray = array_merge_recursive($array1, $array2);
이 솔루션은 간단하며 별도의 작업 없이 원하는 결과를 생성합니다. 추가 루프 또는 조건.
해결책 2: 사용자 정의 함수
또는 사용자 정의 함수를 생성하여 잠재적으로 더 효율적인 방식으로 병합을 수행할 수 있습니다.
function my_array_merge(array &$array1, array &$array2) { $result = []; foreach ($array1 as $key => &$value) { $result[$key] = array_merge($value, $array2[$key]); } return $result; } $mergedArray = my_array_merge($array1, $array2);
이 함수는 첫 번째 배열을 반복하여 병합합니다. 일치하는 키를 기반으로 각 요소를 두 번째 배열의 해당 요소와 함께 사용합니다.
두 솔루션 모두 2D 배열을 병합하는 효과적인 방법을 제공합니다. 공유 열 값을 기반으로 합니다. 선택한 구체적인 접근 방식은 성능 요구 사항이나 코드 가독성 기본 설정과 같은 요소에 따라 달라질 수 있습니다.
위 내용은 공유 열 값을 기반으로 PHP에서 두 개의 2D 배열을 효율적으로 병합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!