Annotation of embedaddon/php/ext/standard/tests/array/array_replace.phpt, revision 1.1
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: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>