如果条件为真,则执行代码否则使条件为真

时间:2014-11-05 05:33:11

标签: php

如果条件为真,我想执行代码,否则使条件为真,然后执行相同的代码..

我的代码是..

$a = array(5,6,7,8,9);
$r = array_rand($a);
$b = 7;
if($b != $r)
  //do something
else
{
//here i want to select another random value and 
//execute the if else loop again until the if satisfies....
}

我已经使用转到,您能否提出任何其他解决方案。

我认为问题很简单,我无法解决问题。

我怎么能这样做......任何帮助都很棒......

5 个答案:

答案 0 :(得分:0)

尝试这个

$a = array(5,6,7,8,9);
$r = array_rand($a);
$b = 7;
while($b != $r)
{
  //do something
 $r = array_rand($a);
}

答案 1 :(得分:0)

试试这个:

$a = array(5,6,7,8,9);
$b = 7;
$r = array_rand($a);
while($b != $a[$r]) {
    $r = array_rand($a);
}

答案 2 :(得分:0)

如果你想要这个

你的if条件是无用的
  

如果条件为真,我想执行代码,否则使条件为真,然后执行相同的代码..

你需要的只是

$a = array(5,6,7,8,9);
$b = 7;
$r=$b;  // That is exactly what your requirement is as it is stated.

//$r = $a[array_search($b,$a)];   this is also useless

这是因为您提供了条件的两个值。那么rand的重点是什么?您知道要选择哪个值,rand是不必要的。

其他答案确实为您提供了解决方案,但他们没有注意到问题本身的基本前提和要求是错误的。

在随机值为7之前,保持找到随机值有什么意义?

答案 3 :(得分:0)

$a = array(5,6,7,8,9);
$r = array_rand($a);
$b = 7;
if($b != $r)
{
  //do something
echo $r;

}else
{
echo "select another random value";
//here i want to select another random value and 
//execute the if else loop again until the if satisfies....
}

答案 4 :(得分:-1)

请使用:

$a = array(5,6,7,8,9);
$b = 7;
$r = array_rand($a);

while($b != $r) {
    $r = array_rand($a);
}

  //do something