Annotation of embedaddon/php/ext/standard/tests/array/array_merge_recursive_variation10.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test array_merge_recursive() function : usage variations - two dimensional arrays
                      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: 
                     10: /*
                     11:  * Testing the functionality of array_merge_recursive() by passing 
                     12:  * two dimensional arrays for $arr1 argument.
                     13: */
                     14: 
                     15: echo "*** Testing array_merge_recursive() : two dimensional array for \$arr1 argument ***\n";
                     16: 
                     17: // initialize the 2-d array
                     18: $arr1 = array( 
                     19:   array(1, 2, 3, 1),
                     20:   "array" => array("hello", "world", "str1" => "hello", "str2" => 'world'),
                     21:   array(1 => "one", 2 => "two", "one", 'two'),
                     22:   array(1, 2, 3, 1)
                     23: );
                     24: 
                     25: // initialize the second argument 
                     26: $arr2 = array(1, "hello", "array" => array("hello", 'world'));
                     27: 
                     28: echo "-- Passing the entire 2-d array --\n";
                     29: echo "-- With default argument --\n";
                     30: var_dump( array_merge_recursive($arr1) );
                     31: echo "-- With more arguments --\n";
                     32: var_dump( array_merge_recursive($arr1, $arr2) );
                     33: 
                     34: echo "-- Passing the sub-array --\n";
                     35: echo "-- With default argument --\n";
                     36: var_dump( array_merge_recursive($arr1["array"]) );
                     37: echo "-- With more arguments --\n";
                     38: var_dump( array_merge_recursive($arr1["array"], $arr2["array"]) );
                     39: 
                     40: echo "Done";
                     41: ?>
                     42: --EXPECTF--
                     43: *** Testing array_merge_recursive() : two dimensional array for $arr1 argument ***
                     44: -- Passing the entire 2-d array --
                     45: -- With default argument --
                     46: array(4) {
                     47:   [0]=>
                     48:   array(4) {
                     49:     [0]=>
                     50:     int(1)
                     51:     [1]=>
                     52:     int(2)
                     53:     [2]=>
                     54:     int(3)
                     55:     [3]=>
                     56:     int(1)
                     57:   }
                     58:   ["array"]=>
                     59:   array(4) {
                     60:     [0]=>
                     61:     string(5) "hello"
                     62:     [1]=>
                     63:     string(5) "world"
                     64:     ["str1"]=>
                     65:     string(5) "hello"
                     66:     ["str2"]=>
                     67:     string(5) "world"
                     68:   }
                     69:   [1]=>
                     70:   array(4) {
                     71:     [1]=>
                     72:     string(3) "one"
                     73:     [2]=>
                     74:     string(3) "two"
                     75:     [3]=>
                     76:     string(3) "one"
                     77:     [4]=>
                     78:     string(3) "two"
                     79:   }
                     80:   [2]=>
                     81:   array(4) {
                     82:     [0]=>
                     83:     int(1)
                     84:     [1]=>
                     85:     int(2)
                     86:     [2]=>
                     87:     int(3)
                     88:     [3]=>
                     89:     int(1)
                     90:   }
                     91: }
                     92: -- With more arguments --
                     93: array(6) {
                     94:   [0]=>
                     95:   array(4) {
                     96:     [0]=>
                     97:     int(1)
                     98:     [1]=>
                     99:     int(2)
                    100:     [2]=>
                    101:     int(3)
                    102:     [3]=>
                    103:     int(1)
                    104:   }
                    105:   ["array"]=>
                    106:   array(6) {
                    107:     [0]=>
                    108:     string(5) "hello"
                    109:     [1]=>
                    110:     string(5) "world"
                    111:     ["str1"]=>
                    112:     string(5) "hello"
                    113:     ["str2"]=>
                    114:     string(5) "world"
                    115:     [2]=>
                    116:     string(5) "hello"
                    117:     [3]=>
                    118:     string(5) "world"
                    119:   }
                    120:   [1]=>
                    121:   array(4) {
                    122:     [1]=>
                    123:     string(3) "one"
                    124:     [2]=>
                    125:     string(3) "two"
                    126:     [3]=>
                    127:     string(3) "one"
                    128:     [4]=>
                    129:     string(3) "two"
                    130:   }
                    131:   [2]=>
                    132:   array(4) {
                    133:     [0]=>
                    134:     int(1)
                    135:     [1]=>
                    136:     int(2)
                    137:     [2]=>
                    138:     int(3)
                    139:     [3]=>
                    140:     int(1)
                    141:   }
                    142:   [3]=>
                    143:   int(1)
                    144:   [4]=>
                    145:   string(5) "hello"
                    146: }
                    147: -- Passing the sub-array --
                    148: -- With default argument --
                    149: array(4) {
                    150:   [0]=>
                    151:   string(5) "hello"
                    152:   [1]=>
                    153:   string(5) "world"
                    154:   ["str1"]=>
                    155:   string(5) "hello"
                    156:   ["str2"]=>
                    157:   string(5) "world"
                    158: }
                    159: -- With more arguments --
                    160: array(6) {
                    161:   [0]=>
                    162:   string(5) "hello"
                    163:   [1]=>
                    164:   string(5) "world"
                    165:   ["str1"]=>
                    166:   string(5) "hello"
                    167:   ["str2"]=>
                    168:   string(5) "world"
                    169:   [2]=>
                    170:   string(5) "hello"
                    171:   [3]=>
                    172:   string(5) "world"
                    173: }
                    174: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>