Home >Backend Development >PHP Tutorial >How to merge multiple arrays in PHP

How to merge multiple arrays in PHP

王林
王林Original
2023-07-08 14:42:102571browse

How to merge multiple arrays in PHP

In PHP, arrays are a very important data structure that are often used to store and operate multiple related data items. Sometimes, we need to merge multiple arrays into one array to process the data more conveniently. This article will explain how to merge multiple arrays in PHP and provide code examples.

PHP provides a variety of methods to merge arrays. Here we will introduce three common methods: using the " " operator, using the array_merge function and using the array_merge_recursive function.

Method 1: Use the " " operator
This is a simple and direct method to merge arrays by using the " " operator between arrays. For indexed arrays, this operator appends the elements in the array together, and for associative arrays, it merges the key-value pairs.

The sample code is as follows:

$array1 = array("a", "b", "c");
$array2 = array(1, 2, 3);

// 索引数组合并
$result1 = $array1 + $array2;
print_r($result1);

$array3 = array("name" => "John", "age" => 25);
$array4 = array("gender" => "male", "age" => 30);

// 关联数组合并
$result2 = $array3 + $array4;
print_r($result2);

The output result is:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => 1
    [4] => 2
    [5] => 3
)
Array
(
    [name] => John
    [age] => 25
    [gender] => male
)

Method 2: Use array_merge function
array_merge function can merge one or more arrays into a new one array. It will return an array containing all the elements in the merged arrays.

The sample code is as follows:

$array1 = array("a", "b", "c");
$array2 = array(1, 2, 3);

// 索引数组合并
$result1 = array_merge($array1, $array2);
print_r($result1);

$array3 = array("name" => "John", "age" => 25);
$array4 = array("gender" => "male", "age" => 30);

// 关联数组合并
$result2 = array_merge($array3, $array4);
print_r($result2);

The output result is:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => 1
    [4] => 2
    [5] => 3
)
Array
(
    [name] => John
    [age] => 30
    [gender] => male
)

It should be noted that the array_merge function will replace the previous elements with the same key name in the subsequent array. Elements, such as the age key in the example code.

Method 3: Use the array_merge_recursive function
The array_merge_recursive function has a similar function to the array_merge function. The difference is that when the same key exists in the merged array, this function will recursively merge these key-value pairs.

The sample code is as follows:

$array1 = array("a", "b", "c");
$array2 = array(1, 2, 3);

// 索引数组合并
$result1 = array_merge_recursive($array1, $array2);
print_r($result1);

$array3 = array("name" => "John", "age" => 25);
$array4 = array("gender" => "male", "age" => 30);

// 关联数组合并
$result2 = array_merge_recursive($array3, $array4);
print_r($result2);

The output result is:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => 1
    [4] => 2
    [5] => 3
)
Array
(
    [name] => John
    [age] => Array
        (
            [0] => 25
            [1] => 30
        )

    [gender] => male
)

As you can see, the array_merge_recursive function saves elements with the same key name in the form of an array.

Summary:
This article introduces three common methods of merging multiple arrays in PHP, namely using the " " operator, using the array_merge function and using the array_merge_recursive function. Choose the appropriate method to merge arrays according to your needs, which can make data processing more convenient.

The above is an introduction to how to merge multiple arrays in PHP. I hope it will be helpful to you.

The above is the detailed content of How to merge multiple arrays in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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