我想获取静态长度以从数组中获取任何随机值。
PHP代码:
在下面的代码中,如何从数组中获取 5 个随机值?
$arr_history = array(23, 44,24,1,345,24,345,34,4,35,325,34,45,6457,57,12);
$lenght=5;
for ( $i = 1; $i < $lenght; $i++ )
echo array_rand($arr_history);
我想获取静态长度以从数组中获取任何随机值。
PHP代码:
在下面的代码中,如何从数组中获取 5 个随机值?
$arr_history = array(23, 44,24,1,345,24,345,34,4,35,325,34,45,6457,57,12);
$lenght=5;
for ( $i = 1; $i < $lenght; $i++ )
echo array_rand($arr_history);
您可以使用array_rand()
选择 5 个随机键,然后使用它们与数组键相交;这使原始数组保持不变。
$values = array_intersect_key($arr_history, array_flip(array_rand($arr_history, 5)));
或者,您可以先对数组进行就地洗牌,然后取出第一个或最后 5 个条目:
shuffle($arr_history);
$values = array_slice($arr_history, -5);
这样做的好处是您可以连续取出多组而不会重叠。
试试这个 :
$rand_value = array_rand($arr_history);
echo $rand_value;
参考: http: //php.net/manual/en/function.array-rand.php
或使用:
shuffle($arr_history)
这将打乱数组的顺序:http: //php.net/manual/en/function.shuffle.php