PHP For循环随机整数

mad*_*reo -1 php for-loop

我是相当新的PHP,我试图解决这个问题,我需要做一个for循环从范围(1,20)生成10个随机数,然后输出它们是奇数还是偶数.

我虽然坚持这一点.到目前为止,我在下面有这个,但我知道它错了.任何帮助或指导将不胜感激.

$rand120 = rand(1, 20); 

for($rand120 = 10; $rand120 <= 20; $rand120++); 
{ 
    echo "$rand120"."<br/>"; 
} 

if ($rand120 % 2 === 0) { 
    echo "$rand120 is even </br>"; 
} else { 
    echo "$rand120 is odd </br>"; 
}
Run Code Online (Sandbox Code Playgroud)

Qir*_*rel 5

rand()只返回一个随机数,而不是一系列数字.这两个参数用于最小值和最大值.如果需要20个随机值,则需要在循环中使用它.

for ($i = 0; $i < 10; $i++) {
    $value = rand(1, 20);
    if ($value % 2 === 0) { 
        echo "$value is even </br>"; 
    } else { 
        echo "$value is odd </br>"; 
    }
}
Run Code Online (Sandbox Code Playgroud)

然而,这并不能确保它们是独一无二的.如果需要,您需要将其添加到数组中,并在每次生成新数字时进行检查,如下所示.这将循环while直到数组中有10个元素,并且只有在数组中不存在时才添加新元素.

$array = array();
while (count($array) < 10)) {
    $value = rand(1, 20);
    if (!in_array($value, $array) {
        $array[] = $value;
        if ($value % 2 === 0) { 
            echo "$value is even </br>"; 
        } else { 
            echo "$value is odd </br>"; 
        }
    }
}
Run Code Online (Sandbox Code Playgroud)