Return to shuffle_variation4.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / array |
1.1 misho 1: --TEST-- 2: Test shuffle() function : usage variation - associative arrays with diff types of values 3: --FILE-- 4: <?php 5: /* Prototype : bool shuffle(array $array_arg) 6: * Description: Randomly shuffle the contents of an array 7: * Source code: ext/standard/array.c 8: */ 9: 10: /* 11: * Test behaviour of shuffle() function when associative arrays 12: * having different types of values, are passed to 'array_arg' argument 13: */ 14: 15: echo "*** Testing shuffle() : associative arrays with diff types of values ***\n"; 16: 17: // initialise different arrays 18: $array_arg = array( 19: // array with positive int values 20: /*1*/ array("zero" => 0, 1 => 1, "two" => 2, "max_int" => 2147483647 ), 21: 22: // array with negative int values 23: array("minus_one" => -1, 'minus_two' => -2, "min_int" => -2147483647 ), 24: 25: // array with positive float values 26: /*3*/ array("float1" => 0.23, 'float2' => 1.34, "exp1" => 0e2, 'exp2' => 200e-2, "exp3" => 10e0), 27: 28: // array with negative float values 29: array(-0.23 => -0.23, -1.34 => -1.34, -200e-2 => -200e-2, -30 => -30e0, -2147473649.80), 30: 31: // array with single and double quoted strings 32: /*5*/ array('1' => 'one', "str1" => "123numbers", '' => 'hello\tworld', "" => "hello world\0", "12.34floatnum"), 33: 34: // array with bool values 35: array('1' => TRUE, "1" => TRUE, "0" => FALSE, '0' => FALSE), 36: 37: // array with positive hexa values 38: /*7*/ array("hex1" => 0x123, 'hex2' => 0xabc, "hex\t3" => 0xABC, "hex\04" => 0xAb1), 39: 40: // array with negative hexa values 41: array(NULL => -0x123, "NULL" => -0xabc, "-ABC" => -0xABC, -0xAB1 => -0xAb1), 42: 43: // array with positive octal values 44: /*9*/ array(0123 => 0123, "02348" => 02348, '034' => 034, 00 => 00), 45: 46: // array with negative octal values 47: array(-0123 => -0123, "-02348" => -02348, '-034' => -034), 48: 49: // array with null values 50: /*11*/ array(NULL => NULL, "null" => NULL, "NULL" => NULL) 51: 52: ); 53: 54: // looping to test shuffle() with each sub-array in the $array_arg array 55: echo "\n*** Testing shuffle() with arrays having different types of values ***\n"; 56: $counter = 1; 57: foreach($array_arg as $arr) { 58: echo "\n-- Iteration $counter --\n"; 59: var_dump( shuffle($arr) ); 60: echo "\nThe output array is:\n"; 61: var_dump( $arr ); 62: $counter++; 63: } 64: 65: echo "Done"; 66: ?> 67: --EXPECTF-- 68: *** Testing shuffle() : associative arrays with diff types of values *** 69: 70: *** Testing shuffle() with arrays having different types of values *** 71: 72: -- Iteration 1 -- 73: bool(true) 74: 75: The output array is: 76: array(4) { 77: [0]=> 78: int(%d) 79: [1]=> 80: int(%d) 81: [2]=> 82: int(%d) 83: [3]=> 84: int(%d) 85: } 86: 87: -- Iteration 2 -- 88: bool(true) 89: 90: The output array is: 91: array(3) { 92: [0]=> 93: int(-%d) 94: [1]=> 95: int(-%d) 96: [2]=> 97: int(-%d) 98: } 99: 100: -- Iteration 3 -- 101: bool(true) 102: 103: The output array is: 104: array(5) { 105: [0]=> 106: float(%f) 107: [1]=> 108: float(%f) 109: [2]=> 110: float(%f) 111: [3]=> 112: float(%f) 113: [4]=> 114: float(%f) 115: } 116: 117: -- Iteration 4 -- 118: bool(true) 119: 120: The output array is: 121: array(5) { 122: [0]=> 123: float(-%f) 124: [1]=> 125: float(-%f) 126: [2]=> 127: float(-%f) 128: [3]=> 129: float(-%f) 130: [4]=> 131: float(-%f) 132: } 133: 134: -- Iteration 5 -- 135: bool(true) 136: 137: The output array is: 138: array(4) { 139: [0]=> 140: string(%d) "%s" 141: [1]=> 142: string(%d) "%s" 143: [2]=> 144: string(%d) "%s" 145: [3]=> 146: string(%d) "%s" 147: } 148: 149: -- Iteration 6 -- 150: bool(true) 151: 152: The output array is: 153: array(2) { 154: [0]=> 155: bool(%s) 156: [1]=> 157: bool(%s) 158: } 159: 160: -- Iteration 7 -- 161: bool(true) 162: 163: The output array is: 164: array(4) { 165: [0]=> 166: int(%d) 167: [1]=> 168: int(%d) 169: [2]=> 170: int(%d) 171: [3]=> 172: int(%d) 173: } 174: 175: -- Iteration 8 -- 176: bool(true) 177: 178: The output array is: 179: array(4) { 180: [0]=> 181: int(-%d) 182: [1]=> 183: int(-%d) 184: [2]=> 185: int(-%d) 186: [3]=> 187: int(-%d) 188: } 189: 190: -- Iteration 9 -- 191: bool(true) 192: 193: The output array is: 194: array(4) { 195: [0]=> 196: int(%d) 197: [1]=> 198: int(%d) 199: [2]=> 200: int(%d) 201: [3]=> 202: int(%d) 203: } 204: 205: -- Iteration 10 -- 206: bool(true) 207: 208: The output array is: 209: array(3) { 210: [0]=> 211: int(-%d) 212: [1]=> 213: int(-%d) 214: [2]=> 215: int(-%d) 216: } 217: 218: -- Iteration 11 -- 219: bool(true) 220: 221: The output array is: 222: array(3) { 223: [0]=> 224: NULL 225: [1]=> 226: NULL 227: [2]=> 228: NULL 229: } 230: Done 231: