我想获得静态长度以获取数组中的任意值。从数组中生成随机值的集合
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);
这样做的好处是可以接受多个连续出现,没有重叠。
这就是在每个刷新页面返回静态值 – 2013-02-20 10:31:52
@TuxWorld愚蠢的错误:)更新。 – 2013-02-20 10:36:17
试试这个:
$rand_value = array_rand($arr_history);
echo $rand_value;
REF:http://php.net/manual/en/function.array-rand.php
或使用:
shuffle($arr_history)
随机并切片或传递'5'作为'array_rand'的第二个参数。 http://php.net/manual/en/function.array-rand.php。 – 2013-02-20 10:19:56
'shuffle($ array); array_slice($ array,0,5); //执行Felix Kling的注释';) – Leri 2013-02-20 10:22:36
@FelixKling传递5作为array_rand()的第二个参数返回一组键,而不是值:) – 2013-02-20 10:26:37