이 기사는 주로 PHP에서 배열을 병합하고 키 값을 유지하는 구현 방법을 공유합니다. 이는 좋은 참조 값을 가지고 있으며 모든 사람에게 도움이 되기를 바랍니다.
php는 일반적으로 array_merge 메서드를 사용하여 배열을 병합합니다.
array_merge — 하나 이상의 배열 병합
array array_merge ( array $array1 [, array $... ] )
array_merge 하나 이상의 배열의 셀을 병합합니다. 한 배열의 값이 이전 배열에 추가되고 결과 배열이 반환됩니다.
입력 배열의 문자열 키 이름이 동일한 경우 키 이름 뒤의 값이 이전 값을 덮어씁니다. 그러나 배열에 숫자 키가 포함된 경우 후자는 원래 값을 덮어쓰지 않고 추가됩니다.
배열만 지정하고 해당 배열을 숫자로 인덱싱하는 경우 키 이름은 연속적으로 다시 인덱싱됩니다.
예 1, 배열은 문자열 키 이름을 사용합니다. 동일한 키 이름은 후속 키 이름으로 덮어쓰여집니다.
<?php $arr1 = array('name'=>'fdipzone'); $arr2 = array('name'=>'terry'); $result = array_merge($arr1, $arr2); print_r($result); ?>
출력:
Array ( [name] => terry )
예 2, 배열은 숫자 키 이름, 동일한 키 이름을 사용합니다. 덮어쓰지 않으며 키 이름이 다시 색인화됩니다
<?php $arr1 = array(0=>'fdipzone',1=>'terry'); $arr2 = array(0=>'php',1=>'python'); $result = array_merge($arr1, $arr2); print_r($result); ?>
출력:
Array ( [0] => fdipzone [1] => terry [2] => php [3] => python )
작업 요구로 인해 설문지의 객관식 질문의 두 부분에 대한 답변을 병합해야 합니다. 각 부분의 답은 배열(key=>value)이며, 키는 문제번호, 값은 답이며, 두 부분에 문제번호가 중복되지 않습니다.
array_merge를 사용하여 답변의 두 부분을 병합합니다.
<?php $form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D'); $form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C'); $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=>'A',12=>'B',13=>'C',14=>'D'); $form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C'); $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 중국어 웹사이트의 기타 관련 기사를 참조하세요!