array_merge_recursive
Description
The array_merge_recursive of Array for PHP merge one or more arrays recursively.
If the input arrays have the same string keys, then the values for these keys are merged together into an array, and this is done recursively, so that if one of the values is an array itself, the function will merge it with a corresponding entry in another array too. If, however, the arrays have the same numeric key, the later value will not overwrite the original value, but will be appended.
Syntax
array_merge_recursive( array ...$arrays ): array
Parameters
arrays
Variable list of arrays to recursively merge.
Return
An array of values resulted from merging the arguments together. If called without any arguments, returns an empty array.
Examples
1 · void
<? $return = array_merge_recursive(); print_r($return); ?>
Array ( )
2 · arrays · one · indexed
<? $arrays = array(0, 1); $return = array_merge_recursive($arrays); print_r($return); ?>
Array ( [0] => 0 [1] => 1 )
3 · arrays · one · associative
<? $arrays = array("a" => 0, "b" => 1); $return = array_merge_recursive($arrays); print_r($return); ?>
Array ( [a] => 0 [b] => 1 )
4 · arrays · multiple · indexed
<? $arrays1 = array(0, 1); $arrays2 = array(2, 3); $return = array_merge_recursive($arrays1, $arrays2); print_r($return); ?>
Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )
5 · arrays · multiple · associative
<? $arrays1 = array("a" => 0, "b" => 1); $arrays2 = array("c" => 2, "d" => 3); $return = array_merge_recursive($arrays1, $arrays2); print_r($return); ?>
Array ( [a] => 0 [b] => 1 [c] => 2 [d] => 3 )
6 · same key · indexed
<? $arrays1 = array(0, 1); $arrays2 = array(0 => 2, 1 => 3); $return = array_merge_recursive($arrays1, $arrays2); print_r($return); ?>
Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )
7 · same key · associative
<? $arrays1 = array("a" => 0, "b" => 1); $arrays2 = array("a" => 2, "b" => 3); $return = array_merge_recursive($arrays1, $arrays2); print_r($return); ?>
Array ( [a] => Array ( [0] => 0 [1] => 2 ) [b] => Array ( [0] => 1 [1] => 3 ) )
Links
Related
Array
- array
- array_change_key_case
- array_chunk
- array_column
- array_combine
- array_count_values
- array_diff
- array_diff_assoc
- array_diff_key
- array_diff_uassoc
- array_diff_ukey
- array_fill
- array_fill_keys
- array_filter
- array_flip
- array_intersect
- array_intersect_assoc
- array_intersect_key
- array_intersect_uassoc
- array_intersect_ukey
- array_key_exists
- array_key_first
- array_key_last
- array_keys
- array_map
- array_merge
- array_multisort
- array_pad
- array_pop
- array_product
- array_push
- array_rand
- array_reduce
- array_replace
- array_replace_recursive
- array_reverse
- array_search
- array_shift
- array_slice
- array_splice
- array_sum
- array_udiff
- array_udiff_assoc
- array_udiff_uassoc
- array_uintersect
- array_uintersect_assoc
- array_uintersect_uassoc
- array_unique
- array_unshift
- array_values
- array_walk
- array_walk_recursive
- arsort
- asort
- compact
- count
- current
- end
- extract
- in_array
- key
- key_exists
- krsort
- ksort
- list
- natcasesort
- natsort
- next
- pos
- prev
- range
- reset
- rsort
- shuffle
- sizeof
- sort
- uasort
- uksort
- usort