Home >Backend Development >PHP Problem >How to merge 2 arrays in php

How to merge 2 arrays in php

PHPz
PHPzOriginal
2023-04-23 10:23:202729browse

PHP is a powerful programming language that is flexible and scalable and is often used to build dynamic websites and web applications.

In PHP, sometimes you need to merge two arrays into one array. Fortunately, PHP provides several ways to accomplish this.

This article will introduce how to merge two arrays in PHP.

1. Use the array_merge() function

array_merge() function is used to merge one or more arrays into one array. This is one of the most commonly used array merging methods in PHP.

Example:

$array1 = array('foo', 'bar', 'baz');
$array2 = array('qux', 'quux', 'corge');
$result = array_merge($array1, $array2);
print_r($result);

Output result:

Array
(
    [0] => foo
    [1] => bar
    [2] => baz
    [3] => qux
    [4] => quux
    [5] => corge
)

You need to pay attention to the following points when using the array_merge() function:

  1. If two arrays If there is the same key name in the key, the later value will overwrite the previous value.
  2. If the key name is a number, the array will be re-indexed so that the key name starts from 0.
  3. array_merge() function can accept multiple parameters, each parameter can be an array or value type.
  4. If the passed parameter is an empty array, the array_merge() function will return an empty array.

2. Use the " " operator

The " " operator is another way to combine two arrays in PHP. Unlike the array_merge() function, it does not renumber numeric key names.

Example:

$array1 = array('foo', 'bar', 'baz');
$array2 = array('qux', 'quux', 'corge');
$result = $array1 + $array2;
print_r($result);

Output result:

Array
(
    [0] => foo
    [1] => bar
    [2] => baz
    [3] => qux
    [4] => quux
    [5] => corge
)

You need to pay attention to the following points when using the " " operator:

  1. If two arrays If there is the same key name in the key, the later value will overwrite the previous value.
  2. The string key names remain unchanged, and the numeric key names maintain the original order.
  3. If the key names of two arrays are the same and the values ​​​​are arrays, then the two arrays will also be merged into one array.

3. Use the array_replace() function

array_replace() function is used to replace the values ​​in one array with the value of the same key name in another array. If the key name does not exist in the second array, it will not be replaced.

Example:

$array1 = array('foo', 'bar', 'baz');
$array2 = array(0 => 'qux', 1 => 'quux');
$result = array_replace($array1, $array2);
print_r($result);

Output result:

Array
(
    [0] => qux
    [1] => quux
    [2] => baz
)

You need to pay attention to the following points when using the array_replace() function:

  1. If you use array_replace( ) function merges two arrays, the latter array will overwrite the values ​​of the same key name in the previous array.
  2. If there is a key name in one array but not in the other array, then the key name will be retained.
  3. If one or more empty arrays are passed to the array_replace() function, the function will return an empty array.

Summary

This article mainly introduces the method of merging two arrays in PHP. The array_merge() function and the " " operator are the most commonly used methods, while the array_replace() function is more suitable for replacing values ​​in an array.

Which method to use depends on the specific needs, but you need to pay attention to their differences and precautions when using them.

Having mastered these methods, developers can handle array-related work more easily.

The above is the detailed content of How to merge 2 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