>백엔드 개발 >PHP 튜토리얼 >PHP에서 키-값 쌍이 있는 두 배열을 단일 배열로 병합하는 방법은 무엇입니까?

PHP에서 키-값 쌍이 있는 두 배열을 단일 배열로 병합하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-15 07:17:10671검색

How to Merge Two Arrays with Key-Value Pairs into a Single Array in PHP?

여러 배열의 행 데이터 병합

여러 배열의 데이터를 하나의 응집력 있는 구조로 병합하는 것은 일반적인 프로그래밍 작업일 수 있습니다. 이 질문은 특정 속성을 가진 새 배열을 생성하기 위해 두 개의 배열을 병합해야 하는 시나리오를 탐구합니다.

첫 번째 배열에는 두 개의 요소가 포함되어 있으며 각각은 "총 가치"와 "수량" 키-값 쌍으로 구성됩니다. . 두 번째 배열에는 두 개의 요소도 포함되어 있으며 각각은 "item_title_id" 및 "order_id" 키-값 쌍으로 구성됩니다.

목표는 이러한 배열을 각 요소가 모든 키-값을 결합하는 새 배열로 병합하는 것입니다. 두 원본 배열의 값 쌍. 결과 배열에는 "gross_value", "Quantity", "item_title_id" 및 "order_id"라는 4개의 키-값 쌍이 있어야 합니다.

해결책

이 병합을 달성하기 위해 권장되는 접근 방식은 다음과 같습니다. array_merge_recursive 함수를 사용합니다. 이 함수는 여러 배열을 입력으로 사용하고 해당 값을 반복적으로 병합합니다.

병합을 준비하기 위해 두 배열의 숫자 키가 문자열로 변환되어 연관 배열이 되도록 합니다. 다음 코드는 이를 보여줍니다.

$ar1 = [
    ['gross_value' => '100', 'quantity' => '1'],
    ['gross_value' => '200', 'quantity' => '1']
];

$ar2 = [
    ['item_title_id' => '1', 'order_id' => '4'],
    ['item_title_id' => '2', 'order_id' => '4']
];

$ar1 = array_map('array_values', $ar1);
$ar2 = array_map('array_values', $ar2);

배열을 변환한 후 array_merge_recursive를 사용하여 병합할 수 있습니다.

$result = array_merge_recursive($ar1, $ar2);
print_r($result);

이 코드는 두 배열의 키-값 쌍을 병합하여 다음을 생성합니다. 원하는 결과:

[
    ['gross_value' => '100', 'quantity' => '1', 'item_title_id' => '1', 'order_id' => 4],
    ['gross_value' => '200', 'quantity' => '1', 'item_title_id' => '2', 'order_id' => 4]
]

위 내용은 PHP에서 키-값 쌍이 있는 두 배열을 단일 배열로 병합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.