在数组上调用时,shuffle随机化该数组的所有元素的顺序.
例如,以下代码部分:
$arr = array(1, 2, 3, 4, 5);
shuffle($arr);
var_dump($arr);
Run Code Online (Sandbox Code Playgroud)
可以给出这个输出:
array
0 => int 3
1 => int 1
2 => int 5
3 => int 4
4 => int 2
Run Code Online (Sandbox Code Playgroud)
整个数组本身都被修改了.
在数组上调用时,array_rand从该数组中返回一个或多个随机选择的键.
例如,以下代码部分:
$arr = array(1, 2, 3, 4, 5);
$randomly_selected = array_rand($arr, 3);
var_dump($randomly_selected);
Run Code Online (Sandbox Code Playgroud)
可以给出一些输出:
array
0 => int 0
1 => int 2
2 => int 3
Run Code Online (Sandbox Code Playgroud)
返回初始数组的子数组 - 并且不修改初始数组.