>백엔드 개발 >PHP 문제 >덮어쓰지 않고 PHP 배열을 병합하는 방법

덮어쓰지 않고 PHP 배열을 병합하는 방법

藏色散人
藏色散人원래의
2021-06-11 10:18:003628검색

덮어쓰지 않고 PHP 배열을 결합하는 방법: 먼저 PHP 샘플 파일을 만든 다음 "array_merge($arr1, $arr2);" 메서드를 사용하여 동일한 키 이름을 덮어쓰지 않고 두 배열을 병합합니다.

덮어쓰지 않고 PHP 배열을 병합하는 방법

이 문서의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

덮어쓰지 않고 PHP 배열을 병합하는 방법은 무엇입니까? 배열을 병합하고 키 값을 유지하는 PHP 방법 ​

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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