Return to array_diff_assoc_variation5.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test array_diff_assoc() function : usage variations - compare integers, floats and strings 3: --FILE-- 4: <?php 5: /* Prototype : array array_diff_assoc(array $arr1, array $arr2 [, array ...]) 6: * Description: Returns the entries of arr1 that have values which are not present 7: * in any of the others arguments but do additional checks whether the keys are equal 8: * Source code: ext/standard/array.c 9: */ 10: 11: /* 12: * Test how array_diff_assoc compares integers, floats and string 13: */ 14: 15: echo "*** Testing array_diff_assoc() : usage variations ***\n"; 16: $arr_default_int = array(1, 2, 3, 'a'); 17: $arr_float = array(0 => 1.00, 1.00 => 2.00, 2.00 => 3.00, 'b'); 18: $arr_string = array('1', '2', '3', 'c'); 19: $arr_string_float = array('0' => '1.00', '1.00' => '2.00', '2.00' => '3.00', 'd'); 20: 21: echo "-- Result of comparing integers and floating point numbers: --\n"; 22: var_dump(array_diff_assoc($arr_default_int, $arr_float)); 23: var_dump(array_diff_assoc($arr_float, $arr_default_int)); 24: 25: echo "-- Result of comparing integers and strings containing an integers : --\n"; 26: var_dump(array_diff_assoc($arr_default_int, $arr_string)); 27: var_dump(array_diff_assoc($arr_string, $arr_default_int)); 28: 29: echo "-- Result of comparing integers and strings containing floating points : --\n"; 30: var_dump(array_diff_assoc($arr_default_int, $arr_string_float)); 31: var_dump(array_diff_assoc($arr_string_float, $arr_default_int)); 32: 33: echo "-- Result of comparing floating points and strings containing integers : --\n"; 34: var_dump(array_diff_assoc($arr_float, $arr_string)); 35: var_dump(array_diff_assoc($arr_string, $arr_float)); 36: 37: echo "-- Result of comparing floating points and strings containing floating point: --\n"; 38: var_dump(array_diff_assoc($arr_float, $arr_string_float)); 39: var_dump(array_diff_assoc($arr_string_float, $arr_float)); 40: 41: echo "-- Result of comparing strings containing integers and strings containing floating points : --\n"; 42: var_dump(array_diff_assoc($arr_string, $arr_string_float)); 43: var_dump(array_diff_assoc($arr_string_float, $arr_string)); 44: 45: echo "-- Result of comparing more than two arrays: --\n"; 46: var_dump(array_diff_assoc($arr_default_int, $arr_float, $arr_string, $arr_string_float)); 47: 48: echo "Done"; 49: ?> 50: --EXPECTF-- 51: 52: *** Testing array_diff_assoc() : usage variations *** 53: -- Result of comparing integers and floating point numbers: -- 54: array(1) { 55: [3]=> 56: string(1) "a" 57: } 58: array(1) { 59: [3]=> 60: string(1) "b" 61: } 62: -- Result of comparing integers and strings containing an integers : -- 63: array(1) { 64: [3]=> 65: string(1) "a" 66: } 67: array(1) { 68: [3]=> 69: string(1) "c" 70: } 71: -- Result of comparing integers and strings containing floating points : -- 72: array(4) { 73: [0]=> 74: int(1) 75: [1]=> 76: int(2) 77: [2]=> 78: int(3) 79: [3]=> 80: string(1) "a" 81: } 82: array(4) { 83: [0]=> 84: string(4) "1.00" 85: ["1.00"]=> 86: string(4) "2.00" 87: ["2.00"]=> 88: string(4) "3.00" 89: [1]=> 90: string(1) "d" 91: } 92: -- Result of comparing floating points and strings containing integers : -- 93: array(1) { 94: [3]=> 95: string(1) "b" 96: } 97: array(1) { 98: [3]=> 99: string(1) "c" 100: } 101: -- Result of comparing floating points and strings containing floating point: -- 102: array(4) { 103: [0]=> 104: float(1) 105: [1]=> 106: float(2) 107: [2]=> 108: float(3) 109: [3]=> 110: string(1) "b" 111: } 112: array(4) { 113: [0]=> 114: string(4) "1.00" 115: ["1.00"]=> 116: string(4) "2.00" 117: ["2.00"]=> 118: string(4) "3.00" 119: [1]=> 120: string(1) "d" 121: } 122: -- Result of comparing strings containing integers and strings containing floating points : -- 123: array(4) { 124: [0]=> 125: string(1) "1" 126: [1]=> 127: string(1) "2" 128: [2]=> 129: string(1) "3" 130: [3]=> 131: string(1) "c" 132: } 133: array(4) { 134: [0]=> 135: string(4) "1.00" 136: ["1.00"]=> 137: string(4) "2.00" 138: ["2.00"]=> 139: string(4) "3.00" 140: [1]=> 141: string(1) "d" 142: } 143: -- Result of comparing more than two arrays: -- 144: array(1) { 145: [3]=> 146: string(1) "a" 147: } 148: Done