How to merge arrays in php and keep key values

PHPz
Release: 2018-10-23 14:40:36
forward
1821 people have browsed it

This article mainly introduces how PHP merges arrays and retains key values. It has certain reference value. Interested friends can refer to it. I hope it will be helpful to you!

php merges arrays, generally using the array_merge method.

array_merge — Merge one or more arrays

array array_merge ( array $array1 [, array $... ] )
Copy after login

array_merge merges the cells of one or more arrays, appending the values ​​in one array to the previous array, returning the resulting array.

If the input array has the same string key name, the value after the key name will overwrite the previous value. However, if the array contains numeric keys, the latter will not overwrite the original value, but will be appended to it.

If only an array is given and the array is numerically indexed, the key names are re-indexed in a consecutive manner.

Example 1, the array uses string key names, the same key names will be overwritten by subsequent ones

<?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);?>
Copy after login

Output:

Array(
    [name] => terry
)
Copy after login

Example 2, the array uses numeric key names, the key names are the same but not will be overwritten, and the key name will be re-indexed

<?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);?>
Copy after login

Output:

Array(
    [0] => fdipzone
    [1] => terry
    [2] => php
    [3] => python
)
Copy after login

Due to work needs, it is necessary to merge the answers to the two parts of the multiple-choice questions in the questionnaire, and each part of the answer is an array (key=>value) , key is the question number, value is the answer, and there is no duplication of question numbers in the two parts.

Use array_merge to merge the two parts of the answer

<?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);?>
Copy after login

Output:

Array(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => B
    [5] => A
    [6] => D
    [7] => C
)
Copy after login

Use array_merge to merge. Because the question number (key) is a number, the key name will be re-indexed, resulting in the question number not being retained.

Method to merge arrays and keep key values:

<?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);?>
Copy after login

Output:

Array(
    [11] => A
    [12] => B
    [13] => C
    [14] => D
    [25] => B
    [26] => A
    [27] => D
    [28] => C
)
Copy after login

Use "+" operator to merge arrays, you can keep the key values ​​of the arrays, if merged The arrays contain the same key values, and the later key values ​​will not overwrite the previous key values ​​(the former one takes precedence).

For more related tutorials, please visit A complete set of video tutorials on PHP programming from entry to master

Related labels:
source:csdn.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!