循环内的随机值

时间:2013-05-08 04:57:46

标签: php

for($i = 1; $i <= 5; $i++)
{
   echo $i . ',';
}

农产品:     1,2,3,4,5

如何随机输出结果的顺序,如下所示:

1,3,5,2,4 or 5,3,2,1,4 or 4,2,1,3,5 and so on..

1 upvote获得最佳答案。 : - )

谢谢!

3 个答案:

答案 0 :(得分:2)

试试这个

function rand_num($min, $max, $quantity) {
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}

print_r( rand_num(1,5,5) );

输出

Array ( [0] => 4 [1] => 3 [2] => 1 [3] => 2 [4] => 5 )

Codepad

答案 1 :(得分:2)

首先创建数组最简单:

$numbers = range(1, 5);

然后将其洗牌:

shuffle($numbers);

然后,打印:

echo join(',', $numbers);

答案 2 :(得分:1)

您想要打印出一个随机集,所以首先使用您的值填充数组

for ($i=1;$i<=5;$i++){
     $array[$i]=$i;
}

所以现在看起来像{1,2,3,4,5]

然后洗牌

shuffle($array);

它现在看起来像{2,4,5,3,1} 然后打印出来

  for ($i=1;$i<=5;$i++){
     echo $array[$i].',';
  }

产生2,4,5,3,1 yay!

然后通过在镜子前面的内衣上跳舞来庆祝。