PHP에서 배열을 병합하고 키 값을 유지하는 방법 소개

黄舟
풀어 주다: 2023-03-15 19:32:01
원래의
1399명이 탐색했습니다.

php는 일반적으로 array_merge 메서드를 사용하여 배열을 병합합니다.

array_merge — 하나 이상의 배열 병합

array array_merge ( array $array1 [, array $... ] )
로그인 후 복사

array_merge 하나 이상의 배열의 셀을 병합합니다. 한 배열의 값이 이전 배열에 추가되고 결과 배열이 반환됩니다.

입력 배열의 문자열 키 이름이 동일한 경우 키 이름 뒤의 값이 이전 값을 덮어씁니다. 그러나 배열에 숫자 키가 포함된 경우 후자는 원래 값을 덮어쓰지 않고 추가됩니다.

배열만 지정하고 해당 배열을 숫자로 인덱싱하는 경우 키 이름은 연속적으로 다시 인덱싱됩니다.


예 1, 배열은 문자열 키 이름을 사용합니다. 동일한 키 이름은 나중에

<?php$arr1 = array(&#39;name&#39;=>&#39;fdipzone&#39;);$arr2 = array(&#39;name&#39;=>&#39;terry&#39;);$result = array_merge($arr1, $arr2);

print_r($result);?>
로그인 후 복사

출력:

Array(
    [name] => terry
)
로그인 후 복사



예 2, 배열이 숫자 키 이름을 사용합니다. 키 이름은 동일하지만 덮어쓰지 않으며 키 이름이 다시 색인화됩니다

<?php
$arr1 = array(0=>&#39;fdipzone&#39;,1=>&#39;terry&#39;);
$arr2 = array(0=>&#39;php&#39;,1=>&#39;python&#39;);
$result = array_merge($arr1, $arr2);

print_r($result);?>
로그인 후 복사

출력:

Array(
    [0] => fdipzone
    [1] => terry
    [2] => php
    [3] => python
)
로그인 후 복사


작업 요구로 인해 답변을 두 부분으로 병합해야 합니다. 설문지 내 객관식 문제이며, 각 부분의 답변은 배열(key=>value )이고, key는 질문 번호, value는 답변이며, 두 부분의 질문 번호가 중복되지 않습니다.

array_merge를 사용하여 답변의 두 부분을 병합합니다.

<?php
$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);
$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);
$result = array_merge($form_data1, $form_data2);

print_r($result);?>
로그인 후 복사

출력:

Array(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => B
    [5] => A
    [6] => D
    [7] => C
)
로그인 후 복사

array_merge를 사용하여 병합합니다. 질문 번호(키)가 숫자이기 때문에 키 이름이 다시 색인화됩니다. 문제번호가 유지되지 않습니다.


배열을 병합하고 키 값을 유지하는 방법:

<?php
$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);
$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);
$result = $form_data1 + $form_data2;

print_r($result);?>
로그인 후 복사

출력:

Array(
    [11] => A
    [12] => B
    [13] => C
    [14] => D
    [25] => B
    [26] => A
    [27] => D
    [28] => C
)
로그인 후 복사


"+" 연산자를 사용하여 배열을 병합하면 배열의 키 값을 유지할 수 있습니다. 병합된 배열에 동일한 키 값이 포함된 경우 나중 키 값이 이전 키 값을 덮어쓰지 않습니다(이전 키 값이 우선 적용됨).

위 내용은 PHP에서 배열을 병합하고 키 값을 유지하는 방법 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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