使用 0 & 3
在PHP
的 multiple conditions
之间生成随机数。
<?php
$answer_ll = 1;
$ll_50_rand_1 = 2;
$ll_50_rand_2 = $answer_ll;
while(($ll_50_rand_2 == $answer_ll) && ($ll_50_rand_2 == $ll_50_rand_1)){
$ll_50_rand_2 = rand(0,3);
}
echo $ll_50_rand_2;?>
我尝试了上面的代码,但 randomly generated number
重复与$answer_ll
或$ll_50_rand_1
。
所有数字仅作为示例编写,否则所有数字都是动态的。 (可根据情况改变)
声明视图:
我只想要一个具有条件的特定范围的随机数。 条件是随机生成的数字不能是X&amp;收率
X&amp;在加载页面时总是决定Y.这意味着它们是动态的
答案 0 :(得分:0)
您的代码在您的示例中已经存在逻辑问题
你声明:$ ll_50_rand_2 = $ answer_ll; 而且你有什么条件($ ll_50_rand_2 == $ answer_ll)?真的? ^^这不是必要的
比你在一个循环中填充一个变量,但是在之后产生回声,那个只输出最后一个随机数。
如果我理解你想要花费取决于变量$的变量那么多随机数。
<?php
$answer_ll = 3;
$ll_50_rand_1 = 3;
for($i = 0; $i < $answer_ll && $anser_ll == $ll_50_rand_1; $i++){
$ll_50_rand_2 = rand(0,3);
echo $ll_50_rand_2 . PHP_EOL;
}
?>
http://sandbox.onlinephpfunctions.com/code/23cbff911e01114e3711d272fde4b0c2d9d6c2c0
也许这个例子可以帮助你:)
答案 1 :(得分:0)
如果我理解正确的目的,那么你想要一个不能是X或Y的随机数。
如果是这种情况,那么您可以通过执行以下操作来实现这一目标
function random_number_with_conditions($x, $y) {
$random_number = rand(0,3);
if($random_number == $x || $random_number == $y)
return random_number_with_conditions($x, $y);
return $random_number;
}
此函数将生成一个随机数,然后根据条件检查该随机数,如果任何条件等于随机生成的数字,则它将再次尝试,并且它将继续这样做,直到它返回一个数字这不是两个条件中的任何一个。