Return to array_intersect_assoc_variation9.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test array_intersect_assoc() function : usage variations - two dimensional arrays for $arr1 and $arr2 arguments 3: --FILE-- 4: <?php 5: /* Prototype : array array_intersect_assoc(array $arr1, array $arr2 [, array $...]) 6: * Description: Returns the entries of arr1 that have values which are present in all the other arguments. 7: * Keys are used to do more restrictive check 8: * Source code: ext/standard/array.c 9: */ 10: 11: /* 12: * Testing the behavior of array_intersect_assoc() by passing 2-D arrays 13: * to both $arr1 and $arr2 argument. 14: * Optional argument takes the same value as that of $arr1 15: */ 16: 17: echo "*** Testing array_intersect_assoc() : passing two dimensional array to both \$arr1 and \$arr2 arguments ***\n"; 18: 19: // two dimensional arrays for $arr1 and $arr2 argument 20: $arr1 = array ( 21: 22: // arrays with default keys 23: array(1, 2, "hello", 'world'), 24: array(1, 2, 3, 4), 25: 26: // arrays with explicit keys 27: array(1 => "one", 2 => "two", 3 => "three"), 28: array("ten" => 10, "twenty" => 20.00, "thirty" => 30) 29: ); 30: 31: $arr2 = array ( 32: array(1, 2, 3, 4), 33: array(1 => "one", 2 => "two", 3 => "three") 34: ); 35: 36: /* Passing the entire array as argument to $arr1 and $arr2 */ 37: // Calling array_intersect_assoc() with default arguments 38: echo "-- Passing the entire 2-D array to \$arr1 and \$arr2 --\n"; 39: echo "- With default arguments -\n"; 40: var_dump( array_intersect_assoc($arr1, $arr2) ); 41: 42: // Calling array_intersect_assoc() with more arguments 43: // additional argument passed is the same as $arr1 44: echo "- With more arguments -\n"; 45: var_dump( array_intersect_assoc($arr1, $arr2, $arr1) ); 46: 47: /* Passing the sub-array as argument to $arr1 and $arr2 */ 48: // Calling array_intersect_assoc() with default arguments 49: echo "-- Passing the sub-array to \$arr1 and \$arr2 --\n"; 50: echo "- With default arguments -\n"; 51: var_dump( array_intersect_assoc($arr1[0], $arr2[0]) ); 52: 53: // Calling array_intersect_assoc() with more arguments 54: // additional argument passed is the same as $arr1 55: echo "- With more arguments -\n"; 56: var_dump( array_intersect_assoc($arr1[0], $arr2[0], $arr1[0]) ); 57: 58: echo "Done"; 59: ?> 60: --EXPECTF-- 61: *** Testing array_intersect_assoc() : passing two dimensional array to both $arr1 and $arr2 arguments *** 62: -- Passing the entire 2-D array to $arr1 and $arr2 -- 63: - With default arguments - 64: array(2) { 65: [0]=> 66: array(4) { 67: [0]=> 68: int(1) 69: [1]=> 70: int(2) 71: [2]=> 72: string(5) "hello" 73: [3]=> 74: string(5) "world" 75: } 76: [1]=> 77: array(4) { 78: [0]=> 79: int(1) 80: [1]=> 81: int(2) 82: [2]=> 83: int(3) 84: [3]=> 85: int(4) 86: } 87: } 88: - With more arguments - 89: array(2) { 90: [0]=> 91: array(4) { 92: [0]=> 93: int(1) 94: [1]=> 95: int(2) 96: [2]=> 97: string(5) "hello" 98: [3]=> 99: string(5) "world" 100: } 101: [1]=> 102: array(4) { 103: [0]=> 104: int(1) 105: [1]=> 106: int(2) 107: [2]=> 108: int(3) 109: [3]=> 110: int(4) 111: } 112: } 113: -- Passing the sub-array to $arr1 and $arr2 -- 114: - With default arguments - 115: array(2) { 116: [0]=> 117: int(1) 118: [1]=> 119: int(2) 120: } 121: - With more arguments - 122: array(2) { 123: [0]=> 124: int(1) 125: [1]=> 126: int(2) 127: } 128: Done