How to merge arrays and preserve the keys in PHP ?

Arrays in PHP are created using array() function. Arrays are variable that can hold more than one values at a time. There are three types of arrays:

  1. Indexed Arrays
  2. Associative Arrays
  3. Multidimensional Arrays

Each and every value in an array has a name or identity attached to it used to access that element called keys.

To merge the two arrays array_merge() function works fine but it does not preserve the keys. Instead array_replace() function helps to merge two arrays while preserving their key.

Program 1: This example using array_replace() function to merge two arrays and preserve the keys.

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
// Create first associative array
$array1 = array(
    1 => 'Welcome',
    2 => 'To'
);
  
// Create second associative array
$array2 = array(
    3 => 'Geeks',
    4 => 'For',
    5 => 'Geeks'
);
  
// Use array_replace() function to
// merge the two array while
// preserving the keys
print_r(array_replace($array1, $array2));
?>

chevron_right


Output:

Array
(
    [1] => Welcome
    [2] => To
    [3] => Geeks
    [4] => For
    [5] => Geeks
)

Program 1: This example using array_replace_recursive() function to merge two arrays and preserve the keys.

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
// Create first associative array
$array1 = array(
    1 => 'Welcome',
    2 => 'To'
);
  
// Create second associative array
$array2 = array(
    3 => 'Geeks',
    4 => 'For',
    5 => 'Geeks'
);
  
// Use array_replace() function to
// merge the two array while
// preserving the keys
print_r(array_replace_recursive($array1, $array2));
?>

chevron_right


Output:

Array
(
    [1] => Welcome
    [2] => To
    [3] => Geeks
    [4] => For
    [5] => Geeks
)



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.