> 백엔드 개발 > PHP 문제 > 키 값을 변경하지 않고 PHP에서 배열을 병합하는 방법

키 값을 변경하지 않고 PHP에서 배열을 병합하는 방법

PHPz
풀어 주다: 2023-04-26 13:36:33
원래의
1237명이 탐색했습니다.

PHP에서 두 배열을 병합하는 것은 매우 일반적인 작업입니다. 그런데 때로는 배열을 병합해야 하는 동시에 원래 배열의 키 값도 유지하고 싶은데 어떻게 해야 할까요? 이 글에서는 배열을 병합할 때 키 값을 보존하는 몇 가지 방법을 소개합니다.

1. array_merge 함수를 사용하세요. array_merge 函数

array_merge 函数可以把一个或多个数组合并起来,并返回一个新的数组。如果传入多个数组,它们将按照参数的顺序依次被合并。

默认情况下,array_merge 函数会把索引数组中的键值重新排序。但是,如果原来的数组中包含了关联数组,它们的键值将会被保留。因此,可以使用 array_merge 函数来实现合并数组但不改变键值的需求。

以下是一个示例,展示如何使用 array_merge 来实现数组合并但不改变键值:

<?php
$array1 = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;);
$array2 = array(1, 2, 3);
$result = array_merge($array1, $array2);
print_r($result);
?>
로그인 후 복사

上述示例代码输出结果如下:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => 1
    [4] => 2
    [5] => 3
)
로그인 후 복사

可以看到,使用 array_merge 函数合并数组后,索引数组中的键值被重新排列,但关联数组中的键值得到了保留。

二、使用 + 运算符

另一种合并数组,但同时保留键值的方法是使用 + 运算符。这种方法只适用于两个数组的情况,但它比 array_merge 函数效率更高,因为不需要创建新的数组。

使用 + 运算符合并两个数组,PHP 会对合并后的数组进行去重。如果两个数组中存在相同的键值,那么合并后的数组将只保留第一个数组中的元素。

以下是一个示例,展示如何使用 + 运算符来实现数组合并但不改变键值:

<?php
$array1 = array(&#39;a&#39; => 1, 'b' => 2, 'c' => 3);
$array2 = array('b' => 4, 'd' => 5, 'e' => 6);
$result = $array1 + $array2;
print_r($result);
?>
로그인 후 복사

上述示例代码输出结果如下:

Array
(
    [a] => 1
    [b] => 2
    [c] => 3
    [d] => 5
    [e] => 6
)
로그인 후 복사

可以看到,使用 + 运算符合并数组后,关联数组中的键值得到了保留,索引数组中的元素也得到了合并。

总结

本文介绍了两种可以合并数组但不改变键值的方法:使用 array_merge 函数和 +

array_merge 함수는 하나 이상의 배열을 결합하고 새 배열을 반환할 수 있습니다. 여러 배열이 전달되면 매개변수 순서대로 병합됩니다. 🎜🎜기본적으로 array_merge 함수는 인덱스 배열의 키 값을 재정렬합니다. 그러나 원본 배열에 연관 배열이 포함되어 있으면 해당 키 값이 유지됩니다. 따라서 array_merge 함수를 사용하면 키 값을 변경하지 않고도 배열을 병합할 수 있습니다. 🎜🎜다음은 array_merge를 사용하여 키 값을 변경하지 않고 배열을 병합하는 방법을 보여주는 예입니다. 🎜rrreee🎜위 예제 코드의 출력은 다음과 같습니다. 🎜rrreee🎜보시다시피, array_merge 를 사용하세요. 함수가 배열을 병합한 후 인덱스 배열의 키 값은 재배열되지만 연관 배열의 키 값은 유지됩니다. 🎜🎜2. + 연산자 사용 🎜🎜키 값을 유지하면서 배열을 병합하는 또 다른 방법은 + 연산자를 사용하는 것입니다. 이 방법은 두 개의 배열에서만 작동하지만 새 배열을 만들 필요가 없기 때문에 array_merge 함수보다 더 효율적입니다. 🎜🎜+ 연산자를 사용하여 두 배열을 병합하면 PHP가 병합된 배열의 중복을 제거합니다. 두 배열에 동일한 키 값이 있는 경우 병합된 배열은 첫 번째 배열의 요소만 유지합니다. 🎜🎜다음은 + 연산자를 사용하여 키 값을 변경하지 않고 배열을 병합하는 방법을 보여주는 예입니다. 🎜rrreee🎜위 예제 코드의 출력은 다음과 같습니다. 🎜rrreee🎜가능한 대로 참조, + 사용 연산자가 배열을 병합한 후 연관 배열의 키 값은 유지되고 인덱스 배열의 요소도 병합됩니다. 🎜🎜요약🎜🎜이 글에서는 키 값을 변경하지 않고 배열을 병합하는 두 가지 방법, 즉 array_merge 함수와 + 연산자를 사용하는 방법을 소개합니다. 이러한 방법은 매우 간단하지만 매우 실용적입니다. 여러 배열을 다루거나 두 개의 연관 배열을 병합해야 하는 경우 이러한 방법을 사용하면 원본 배열의 키 값을 보존하고 배열을 신속하게 병합할 수 있습니다. 🎜

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

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