Return to array_replace.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test array_replace and array_replace_recursive 3: --FILE-- 4: <?php 5: 6: $array1 = array( 7: 0 => 'dontclobber', 8: '1' => 'unclobbered', 9: 'test2' => 0.0, 10: 'test3' => array( 11: 'testarray2' => true, 12: 1 => array( 13: 'testsubarray1' => 'dontclobber2', 14: 'testsubarray2' => 'dontclobber3', 15: ), 16: ), 17: ); 18: 19: $array2 = array( 20: 1 => 'clobbered', 21: 'test3' => array( 22: 'testarray2' => false, 23: ), 24: 'test4' => array( 25: 'clobbered3' => array(0, 1, 2), 26: ), 27: ); 28: 29: $array3 = array(array(array(array()))); 30: 31: $array4 = array(); 32: $array4[] = &$array4; 33: 34: echo " -- Testing array_replace() --\n"; 35: $data = array_replace($array1, $array2); 36: 37: var_dump($data); 38: 39: echo " -- Testing array_replace_recursive() --\n"; 40: $data = array_replace_recursive($array1, $array2); 41: 42: var_dump($data); 43: 44: echo " -- Testing array_replace_recursive() w/ endless recusrsion --\n"; 45: $data = array_replace_recursive($array3, $array4); 46: 47: var_dump($data); 48: ?> 49: --EXPECTF-- 50: -- Testing array_replace() -- 51: array(5) { 52: [0]=> 53: string(11) "dontclobber" 54: [1]=> 55: string(9) "clobbered" 56: ["test2"]=> 57: float(0) 58: ["test3"]=> 59: array(1) { 60: ["testarray2"]=> 61: bool(false) 62: } 63: ["test4"]=> 64: array(1) { 65: ["clobbered3"]=> 66: array(3) { 67: [0]=> 68: int(0) 69: [1]=> 70: int(1) 71: [2]=> 72: int(2) 73: } 74: } 75: } 76: -- Testing array_replace_recursive() -- 77: array(5) { 78: [0]=> 79: string(11) "dontclobber" 80: [1]=> 81: string(9) "clobbered" 82: ["test2"]=> 83: float(0) 84: ["test3"]=> 85: array(2) { 86: ["testarray2"]=> 87: bool(false) 88: [1]=> 89: array(2) { 90: ["testsubarray1"]=> 91: string(12) "dontclobber2" 92: ["testsubarray2"]=> 93: string(12) "dontclobber3" 94: } 95: } 96: ["test4"]=> 97: array(1) { 98: ["clobbered3"]=> 99: array(3) { 100: [0]=> 101: int(0) 102: [1]=> 103: int(1) 104: [2]=> 105: int(2) 106: } 107: } 108: } 109: -- Testing array_replace_recursive() w/ endless recusrsion -- 110: 111: Warning: array_replace_recursive(): recursion detected in %s on line %d 112: array(1) { 113: [0]=> 114: array(1) { 115: [0]=> 116: array(1) { 117: [0]=> 118: array(0) { 119: } 120: } 121: } 122: }