1--TEST-- 2Test array_merge_recursive() function : basic functionality - array with default keys 3--FILE-- 4<?php 5/* Prototype : array array_merge_recursive(array $arr1[, array $...]) 6 * Description: Recursively merges elements from passed arrays into one array 7 * Source code: ext/standard/array.c 8*/ 9 10echo "*** Testing array_merge_recursive() : array with default keys ***\n"; 11 12// Initialise the arrays 13$arr1 = array(1, array(1, 2)); 14$arr2 = array(3, array("hello", 'world')); 15$arr3 = array(array(6, 7), array("str1", 'str2')); 16 17// Calling array_merge_recursive() without arguments 18echo "-- Without arguments --\n"; 19var_dump( array_merge_recursive() ); 20 21// Calling array_merge_recursive() with default arguments 22echo "-- With default argument --\n"; 23var_dump( array_merge_recursive($arr1) ); 24 25// Calling array_merge_recursive() with more arguments 26echo "-- With more arguments --\n"; 27var_dump( array_merge_recursive($arr1,$arr2) ); 28var_dump( array_merge_recursive($arr1,$arr2,$arr3) ); 29 30echo "Done"; 31?> 32--EXPECT-- 33*** Testing array_merge_recursive() : array with default keys *** 34-- Without arguments -- 35array(0) { 36} 37-- With default argument -- 38array(2) { 39 [0]=> 40 int(1) 41 [1]=> 42 array(2) { 43 [0]=> 44 int(1) 45 [1]=> 46 int(2) 47 } 48} 49-- With more arguments -- 50array(4) { 51 [0]=> 52 int(1) 53 [1]=> 54 array(2) { 55 [0]=> 56 int(1) 57 [1]=> 58 int(2) 59 } 60 [2]=> 61 int(3) 62 [3]=> 63 array(2) { 64 [0]=> 65 string(5) "hello" 66 [1]=> 67 string(5) "world" 68 } 69} 70array(6) { 71 [0]=> 72 int(1) 73 [1]=> 74 array(2) { 75 [0]=> 76 int(1) 77 [1]=> 78 int(2) 79 } 80 [2]=> 81 int(3) 82 [3]=> 83 array(2) { 84 [0]=> 85 string(5) "hello" 86 [1]=> 87 string(5) "world" 88 } 89 [4]=> 90 array(2) { 91 [0]=> 92 int(6) 93 [1]=> 94 int(7) 95 } 96 [5]=> 97 array(2) { 98 [0]=> 99 string(4) "str1" 100 [1]=> 101 string(4) "str2" 102 } 103} 104Done 105