In PHP, merging two arrays is a very common task. However, sometimes we need to merge arrays, but at the same time we also want to retain the key values of the original array, so what should we do? This article will introduce some methods to preserve key values when merging arrays.
1. Use the array_merge
function
array_merge
The function can merge one or more arrays and return a new array. If multiple arrays are passed in, they will be merged in order of parameters.
By default, the array_merge
function will reorder the key values in the index array. However, if the original array contains associative arrays, their key values will be retained. Therefore, you can use the array_merge
function to achieve the need to merge arrays without changing the key values.
The following is an example showing how to use array_merge
to merge arrays without changing the key values:
<?php $array1 = array('a', 'b', 'c'); $array2 = array(1, 2, 3); $result = array_merge($array1, $array2); print_r($result); ?>
The output of the above example code is as follows:
Array ( [0] => a [1] => b [2] => c [3] => 1 [4] => 2 [5] => 3 )
You can see that after merging arrays using the array_merge
function, the key values in the index array are rearranged, but the key values in the associative array are retained.
2. Use the
operator
Another way to merge arrays while retaining the key values is to use the
operator. This method only works with two arrays, but it is more efficient than the array_merge
function because there is no need to create a new array.
Use the
operator to merge two arrays, and PHP will deduplicate the merged array. If the same key value exists in two arrays, the merged array will only retain the elements in the first array.
The following is an example showing how to use the
operator to merge arrays without changing the key values:
<?php $array1 = array('a' => 1, 'b' => 2, 'c' => 3); $array2 = array('b' => 4, 'd' => 5, 'e' => 6); $result = $array1 + $array2; print_r($result); ?>
The output of the above example code is as follows:
Array ( [a] => 1 [b] => 2 [c] => 3 [d] => 5 [e] => 6 )
You can see that after using the
operator to merge the arrays, the key values in the associative array are retained, and the elements in the index array are also merged.
Summary
This article introduces two ways to merge arrays without changing the key values: using the array_merge
function and the
operator. These methods are very simple but very practical. Whether you are dealing with multiple arrays or need to merge two associative arrays, these methods can help you preserve the key values of the original arrays and quickly merge the arrays.
The above is the detailed content of How to merge arrays in php without changing the key values. For more information, please follow other related articles on the PHP Chinese website!