Return to sort_variation9.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test sort() function : usage variations - sort diff. associative arrays, 'sort_flags' as defualt/SORT_REGULAR 3: --FILE-- 4: <?php 5: /* Prototype : bool sort ( array &$array [, int $sort_flags] ) 6: * Description: This function sorts an array. 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 sort() by providing arrays with key values for $array argument 13: * with following flag values. 14: * 1.flag value as defualt 15: * 2.SORT_REGULAR - compare items normally 16: * To test the new keys for the elements in the sorted array. 17: */ 18: 19: echo "*** Testing sort() : usage variations ***\n"; 20: 21: // list of arrays with key and values 22: $various_arrays = array( 23: array(5 => 55, 6 => 66, 2 => 22, 3 => 33, 1 => 11), 24: array ("fruits" => array("a" => "orange", "b" => "banana", "c" => "apple"), 25: "numbers" => array(1, 2, 3, 4, 5, 6), 26: "holes" => array("first", 5 => "second", "third") 27: ), 28: array(1, 1, 8 => 1, 4 => 1, 19, 3 => 13), 29: array('bar' => 'baz', "foo" => 1), 30: array('a' => 1,'b' => array('e' => 2,'f' => 3),'c' => array('g' => 4),'d' => 5), 31: ); 32: 33: $count = 1; 34: echo "\n-- Testing sort() by supplying various arrays with key values --\n"; 35: 36: // loop through to test sort() with different arrays, 37: // to test the new keys for the elements in the sorted array 38: foreach ($various_arrays as $array) { 39: echo "\n-- Iteration $count --\n"; 40: 41: echo "- With Defualt sort flag -\n"; 42: $temp_array = $array; 43: var_dump(sort($temp_array) ); 44: var_dump($temp_array); 45: 46: echo "- Sort flag = SORT_REGULAR -\n"; 47: $temp_array = $array; 48: var_dump(sort($temp_array, SORT_REGULAR) ); 49: var_dump($temp_array); 50: $count++; 51: } 52: 53: echo "Done\n"; 54: ?> 55: --EXPECTF-- 56: *** Testing sort() : usage variations *** 57: 58: -- Testing sort() by supplying various arrays with key values -- 59: 60: -- Iteration 1 -- 61: - With Defualt sort flag - 62: bool(true) 63: array(5) { 64: [0]=> 65: int(11) 66: [1]=> 67: int(22) 68: [2]=> 69: int(33) 70: [3]=> 71: int(55) 72: [4]=> 73: int(66) 74: } 75: - Sort flag = SORT_REGULAR - 76: bool(true) 77: array(5) { 78: [0]=> 79: int(11) 80: [1]=> 81: int(22) 82: [2]=> 83: int(33) 84: [3]=> 85: int(55) 86: [4]=> 87: int(66) 88: } 89: 90: -- Iteration 2 -- 91: - With Defualt sort flag - 92: bool(true) 93: array(3) { 94: [0]=> 95: array(3) { 96: [0]=> 97: string(5) "first" 98: [5]=> 99: string(6) "second" 100: [6]=> 101: string(5) "third" 102: } 103: [1]=> 104: array(3) { 105: ["a"]=> 106: string(6) "orange" 107: ["b"]=> 108: string(6) "banana" 109: ["c"]=> 110: string(5) "apple" 111: } 112: [2]=> 113: array(6) { 114: [0]=> 115: int(1) 116: [1]=> 117: int(2) 118: [2]=> 119: int(3) 120: [3]=> 121: int(4) 122: [4]=> 123: int(5) 124: [5]=> 125: int(6) 126: } 127: } 128: - Sort flag = SORT_REGULAR - 129: bool(true) 130: array(3) { 131: [0]=> 132: array(3) { 133: [0]=> 134: string(5) "first" 135: [5]=> 136: string(6) "second" 137: [6]=> 138: string(5) "third" 139: } 140: [1]=> 141: array(3) { 142: ["a"]=> 143: string(6) "orange" 144: ["b"]=> 145: string(6) "banana" 146: ["c"]=> 147: string(5) "apple" 148: } 149: [2]=> 150: array(6) { 151: [0]=> 152: int(1) 153: [1]=> 154: int(2) 155: [2]=> 156: int(3) 157: [3]=> 158: int(4) 159: [4]=> 160: int(5) 161: [5]=> 162: int(6) 163: } 164: } 165: 166: -- Iteration 3 -- 167: - With Defualt sort flag - 168: bool(true) 169: array(6) { 170: [0]=> 171: int(1) 172: [1]=> 173: int(1) 174: [2]=> 175: int(1) 176: [3]=> 177: int(1) 178: [4]=> 179: int(13) 180: [5]=> 181: int(19) 182: } 183: - Sort flag = SORT_REGULAR - 184: bool(true) 185: array(6) { 186: [0]=> 187: int(1) 188: [1]=> 189: int(1) 190: [2]=> 191: int(1) 192: [3]=> 193: int(1) 194: [4]=> 195: int(13) 196: [5]=> 197: int(19) 198: } 199: 200: -- Iteration 4 -- 201: - With Defualt sort flag - 202: bool(true) 203: array(2) { 204: [0]=> 205: string(3) "baz" 206: [1]=> 207: int(1) 208: } 209: - Sort flag = SORT_REGULAR - 210: bool(true) 211: array(2) { 212: [0]=> 213: string(3) "baz" 214: [1]=> 215: int(1) 216: } 217: 218: -- Iteration 5 -- 219: - With Defualt sort flag - 220: bool(true) 221: array(4) { 222: [0]=> 223: int(1) 224: [1]=> 225: int(5) 226: [2]=> 227: array(1) { 228: ["g"]=> 229: int(4) 230: } 231: [3]=> 232: array(2) { 233: ["e"]=> 234: int(2) 235: ["f"]=> 236: int(3) 237: } 238: } 239: - Sort flag = SORT_REGULAR - 240: bool(true) 241: array(4) { 242: [0]=> 243: int(1) 244: [1]=> 245: int(5) 246: [2]=> 247: array(1) { 248: ["g"]=> 249: int(4) 250: } 251: [3]=> 252: array(2) { 253: ["e"]=> 254: int(2) 255: ["f"]=> 256: int(3) 257: } 258: } 259: Done