PHP随机数循环

时间:2013-02-12 18:33:11

标签: php while-loop

我有一个生成20个随机数的函数:

function randomAttempts()
{
  $i=1;
      while($i<=20)
      {
          echo "The number is " . rand(1,100) . "<br>";
          $i++;
      }
}

然而,我的问题是 - 我如何回应例如'10th'随机数或'11th'等?

我想我错过了这里的逻辑。

3 个答案:

答案 0 :(得分:0)

最简单的解决方案就是这样:

function randomAttempts()
{
    $i=1;
    $printIndex = 11;
    while($i<=20)
    {
        if ($i == $printIndex)
            echo "The number is " . rand(1,100) . "<br>";
        $i++;
    }
}

或者您可以将$ printIndex作为参数传递给您的函数

编辑: 如果你需要让我们说11号,那么生成20个数字是没有意义的。 这样的代码会更好用:

function randomAttempts($printIndex = 1)
{
    $i = 1;
    $random = 0;
    while($i<=$printIndex )
    {
        $random = rand(1,100);
        $i++;
    }
    echo "The number is " . $random . "<br>";
}

答案 1 :(得分:0)

function randomAttempts($num)
{
  $i=1;
  $ar=array();
  while($i<=$num)
  {
      $ar[]=rand(1,100);
      $i++;
  }
  $out=array_pop($ar);
  unset($ar);
  return $out;
}

样本

echo randomAttempts(10);

echo randomAttempts(11);

答案 2 :(得分:0)

function randomAttempts($passNthNumberToBeEchoed)
{
  $i=1;
      while($i<=20)
      {
          $randNum =  rand(1,100);

          if($passNthNumberToBeEchoed==$i){
            echo "The number is " . $randNum  . "<br>";
            }

          $i++;
      }
}

希望它有所帮助。