Return to asort_variation6.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test asort() function : usage variations - sort hexadecimal values 3: --FILE-- 4: <?php 5: /* Prototype : bool asort ( array &$array [, int $asort_flags] ) 6: * Description: Sort an array and maintain index association. 7: Elements will be arranged from lowest to highest when this function has completed. 8: * Source code: ext/standard/array.c 9: */ 10: 11: /* 12: * testing asort() by providing different hexa-decimal array for $array argument with following flag values 13: * flag value as defualt 14: * SORT_REGULAR - compare items normally 15: * SORT_NUMERIC - compare items numerically 16: */ 17: 18: echo "*** Testing asort() : usage variations ***\n"; 19: 20: // an array contains unsorted hexadecimal values 21: // There are multiple keys which are duplicate and the later should be picked 22: $unsorted_hex_array = array ( 0x1AB => 0x1AB, 0xFFF => 0xFFF, 0xF => 0xF, 0xFF => 0xFF, 0x2AA => 0x2AA, 0xBB => 0xBB, 23: 0x1ab => 0x1ab, 0xff => 0xff, -0xff => -0xFF, 0 => 0, -0x2aa => -0x2aa 24: ); 25: 26: echo "\n-- Testing asort() by supplying hexadecimal value array, 'flag' value is defualt --\n"; 27: $temp_array = $unsorted_hex_array; 28: var_dump(asort($temp_array) ); // expecting : bool(true) 29: var_dump($temp_array); 30: 31: echo "\n-- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_REGULAR --\n"; 32: $temp_array = $unsorted_hex_array; 33: var_dump(asort($temp_array, SORT_REGULAR) ); // expecting : bool(true) 34: var_dump($temp_array); 35: 36: echo "\n-- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_NUMERIC --\n"; 37: $temp_array = $unsorted_hex_array; 38: var_dump(asort($temp_array, SORT_NUMERIC) ); // expecting : bool(true) 39: var_dump($temp_array); 40: 41: echo "Done\n"; 42: ?> 43: --EXPECTF-- 44: *** Testing asort() : usage variations *** 45: 46: -- Testing asort() by supplying hexadecimal value array, 'flag' value is defualt -- 47: bool(true) 48: array(9) { 49: [-682]=> 50: int(-682) 51: [-255]=> 52: int(-255) 53: [0]=> 54: int(0) 55: [15]=> 56: int(15) 57: [187]=> 58: int(187) 59: [255]=> 60: int(255) 61: [427]=> 62: int(427) 63: [682]=> 64: int(682) 65: [4095]=> 66: int(4095) 67: } 68: 69: -- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_REGULAR -- 70: bool(true) 71: array(9) { 72: [-682]=> 73: int(-682) 74: [-255]=> 75: int(-255) 76: [0]=> 77: int(0) 78: [15]=> 79: int(15) 80: [187]=> 81: int(187) 82: [255]=> 83: int(255) 84: [427]=> 85: int(427) 86: [682]=> 87: int(682) 88: [4095]=> 89: int(4095) 90: } 91: 92: -- Testing asort() by supplying hexadecimal value array, 'flag' value is SORT_NUMERIC -- 93: bool(true) 94: array(9) { 95: [-682]=> 96: int(-682) 97: [-255]=> 98: int(-255) 99: [0]=> 100: int(0) 101: [15]=> 102: int(15) 103: [187]=> 104: int(187) 105: [255]=> 106: int(255) 107: [427]=> 108: int(427) 109: [682]=> 110: int(682) 111: [4095]=> 112: int(4095) 113: } 114: Done