php中有不少排序的函数,sort,rsort,ksort,krsort,asort,arsort,natcasesort,这些函数用来对数组的键或值进行这样,或那样的排序。php
能够终究有时候还须要一些函数来随机获取数组的元素。数组
array_rand()函数函数
随机获取数组中的一个函数,能够经过第二个参数指定一次获取多少个元素,第一个参数目标数组spa
注意:这里的随机只是伪随机数code
例子1blog
1 $arr = [1, 2, 3, 4, 5]; 2 print( array_rand( $arr, 6 ) );
输出:排序
Warning: array_rand(): Second argument has to be between 1 and the number of elements in the array in D:\workspace\project_shop\demo.php on line 3
其实echo什么也没有输出,只有一个警告,就是第二个参数必定要 小于等于 $arr 数组元素的个数。element
例子2 正常的用法,返回的是一个数组。class
1 $arr = [1, 2, 3, 4, 5]; 2 print_r( array_rand( $arr, 3 ) ) ; 3 // Array 4 // ( 5 // [0] => 0 6 // [1] => 1 7 // [2] => 2 8 // )
shuffe()函数 ,打乱数组中的元素位置随机数
这个函数按引用传递一个目标数组,返回真假值
例子3 从结果能够看到,打乱元素位置顺序以后,并未保留原来的键值关系
1 $arr = [1, 2, 3, 4, 5]; 2 var_dump( shuffle( $arr ) ) ; 3 print_r( $arr ); 4 // bool(true) 5 // Array 6 // ( 7 // [0] => 3 8 // [1] => 4 9 // [2] => 2 10 // [3] => 1 11 // [4] => 5 12 // )