--TEST-- Test shuffle() function : usage variation - associative arrays with diff types of values --FILE-- 0, 1 => 1, "two" => 2, "max_int" => 2147483647 ), // array with negative int values array("minus_one" => -1, 'minus_two' => -2, "min_int" => -2147483647 ), // array with positive float values /*3*/ array("float1" => 0.23, 'float2' => 1.34, "exp1" => 0e2, 'exp2' => 200e-2, "exp3" => 10e0), // array with negative float values array(-0.23 => -0.23, -1.34 => -1.34, -200e-2 => -200e-2, -30 => -30e0, -2147473649.80), // array with single and double quoted strings /*5*/ array('1' => 'one', "str1" => "123numbers", '' => 'hello\tworld', "" => "hello world\0", "12.34floatnum"), // array with bool values array('1' => TRUE, "1" => TRUE, "0" => FALSE, '0' => FALSE), // array with positive hexa values /*7*/ array("hex1" => 0x123, 'hex2' => 0xabc, "hex\t3" => 0xABC, "hex\04" => 0xAb1), // array with negative hexa values array(NULL => -0x123, "NULL" => -0xabc, "-ABC" => -0xABC, -0xAB1 => -0xAb1), // array with positive octal values /*9*/ array(0123 => 0123, "02348" => 02348, '034' => 034, 00 => 00), // array with negative octal values array(-0123 => -0123, "-02348" => -02348, '-034' => -034), // array with null values /*11*/ array(NULL => NULL, "null" => NULL, "NULL" => NULL) ); // looping to test shuffle() with each sub-array in the $array_arg array echo "\n*** Testing shuffle() with arrays having different types of values ***\n"; $counter = 1; foreach($array_arg as $arr) { echo "\n-- Iteration $counter --\n"; var_dump( shuffle($arr) ); echo "\nThe output array is:\n"; var_dump( $arr ); $counter++; } echo "Done"; ?> --EXPECTF-- *** Testing shuffle() : associative arrays with diff types of values *** *** Testing shuffle() with arrays having different types of values *** -- Iteration 1 -- bool(true) The output array is: array(4) { [0]=> int(%d) [1]=> int(%d) [2]=> int(%d) [3]=> int(%d) } -- Iteration 2 -- bool(true) The output array is: array(3) { [0]=> int(-%d) [1]=> int(-%d) [2]=> int(-%d) } -- Iteration 3 -- bool(true) The output array is: array(5) { [0]=> float(%f) [1]=> float(%f) [2]=> float(%f) [3]=> float(%f) [4]=> float(%f) } -- Iteration 4 -- bool(true) The output array is: array(5) { [0]=> float(-%f) [1]=> float(-%f) [2]=> float(-%f) [3]=> float(-%f) [4]=> float(-%f) } -- Iteration 5 -- bool(true) The output array is: array(4) { [0]=> string(%d) "%s" [1]=> string(%d) "%s" [2]=> string(%d) "%s" [3]=> string(%d) "%s" } -- Iteration 6 -- bool(true) The output array is: array(2) { [0]=> bool(%s) [1]=> bool(%s) } -- Iteration 7 -- bool(true) The output array is: array(4) { [0]=> int(%d) [1]=> int(%d) [2]=> int(%d) [3]=> int(%d) } -- Iteration 8 -- bool(true) The output array is: array(4) { [0]=> int(-%d) [1]=> int(-%d) [2]=> int(-%d) [3]=> int(-%d) } -- Iteration 9 -- bool(true) The output array is: array(4) { [0]=> int(%d) [1]=> int(%d) [2]=> int(%d) [3]=> int(%d) } -- Iteration 10 -- bool(true) The output array is: array(3) { [0]=> int(-%d) [1]=> int(-%d) [2]=> int(-%d) } -- Iteration 11 -- bool(true) The output array is: array(3) { [0]=> NULL [1]=> NULL [2]=> NULL } Done