1--TEST--
2Test array_rand() function : basic functionality - with associative array for 'input' argument
3--FILE--
4<?php
5/* Prototype  : mixed array_rand(array $input [, int $num_req])
6 * Description: Return key/keys for random entry/entries in the array
7 * Source code: ext/standard/array.c
8*/
9
10/*
11 * Test array_rand() when associative array is passed to 'input' argument
12*/
13
14echo "*** Testing array_rand() : with associative array ***\n";
15
16
17// Initialise the 'input' and 'num_req' variables
18$input = array(
19  'one' => 1, 'two' => 2, 'three' => 3,
20  'FoUr' => 'four', '#5' => 5, 'SIX' => 'six',
21  "seven" => 7, "#8" => "eight", "nine" => "NINE"
22);
23
24$num_req = 6;
25
26// Calling array_rand() with optional argument
27echo"\n-- with all default and optional arguments --\n";
28var_dump( array_rand($input,$num_req) );
29
30// Calling array_rand() with default arguments
31echo"\n-- with default argument --\n";
32var_dump( array_rand($input) );
33
34echo "Done";
35?>
36--EXPECTF--
37*** Testing array_rand() : with associative array ***
38
39-- with all default and optional arguments --
40array(6) {
41  [0]=>
42  string(%d) "%s"
43  [1]=>
44  string(%d) "%s"
45  [2]=>
46  string(%d) "%s"
47  [3]=>
48  string(%d) "%s"
49  [4]=>
50  string(%d) "%s"
51  [5]=>
52  string(%d) "%s"
53}
54
55-- with default argument --
56string(%d) "%s"
57Done
58