Return to natcasesort_variation9.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test natcasesort() function : usage variations - mixed array 3: --FILE-- 4: <?php 5: /* Prototype : bool natcasesort(array &$array_arg) 6: * Description: Sort an array using case-insensitive natural sort 7: * Source code: ext/standard/array.c 8: */ 9: 10: /* 11: * Pass an array containing sub-arrays, ints, floats, strings, boolean, null 12: * and escape characters to test how natcasesort() re-orders it 13: */ 14: 15: echo "*** Testing natcasesort() : usage variation ***\n"; 16: 17: $mixed_values = array ( 18: array(), 19: array( array(33, -5, 6), 20: array(11), 21: array(22, -55), 22: array() 23: ), 24: -4, "4", 4.00, "b", "5", -2, -2.0, -2.98989, "-.9", "True", "", 25: NULL, "ab", "abcd", 0.0, -0, "abcd\x00abcd\x00abcd", '', true, false 26: ); 27: // suppress errors as is generating a lot of "array to string" notices 28: var_dump( @natcasesort($mixed_values) ); 29: 30: var_dump($mixed_values); 31: 32: echo "Done"; 33: ?> 34: 35: --EXPECTF-- 36: *** Testing natcasesort() : usage variation *** 37: bool(true) 38: array(22) { 39: [13]=> 40: NULL 41: [19]=> 42: string(0) "" 43: [21]=> 44: bool(false) 45: [12]=> 46: string(0) "" 47: [10]=> 48: string(3) "-.9" 49: [7]=> 50: int(-2) 51: [8]=> 52: float(-2) 53: [9]=> 54: float(-2.98989) 55: [2]=> 56: int(-4) 57: [16]=> 58: float(0) 59: [17]=> 60: int(0) 61: [20]=> 62: bool(true) 63: [3]=> 64: string(1) "4" 65: [4]=> 66: float(4) 67: [6]=> 68: string(1) "5" 69: [14]=> 70: string(2) "ab" 71: [15]=> 72: string(4) "abcd" 73: [18]=> 74: string(14) "%s" 75: [0]=> 76: array(0) { 77: } 78: [1]=> 79: array(4) { 80: [0]=> 81: array(3) { 82: [0]=> 83: int(33) 84: [1]=> 85: int(-5) 86: [2]=> 87: int(6) 88: } 89: [1]=> 90: array(1) { 91: [0]=> 92: int(11) 93: } 94: [2]=> 95: array(2) { 96: [0]=> 97: int(22) 98: [1]=> 99: int(-55) 100: } 101: [3]=> 102: array(0) { 103: } 104: } 105: [5]=> 106: string(1) "b" 107: [11]=> 108: string(4) "True" 109: } 110: Done