根据随机数字选择一个字符串

问题描述:

我正在学习一些PHP,并且遇到了一些问题。 我使用PHP从1-360随机选择一个数字。我试图将答案与由范围确定的价值清单进行比较。根据随机数字选择一个字符串

$NumberA = rand(0,180); 
$NumberB = rand(0,180); 
$NumberC = $NumberA + $NumberB; 

if ($NumberC = range(0,21) { 
    $result = "Orange"; 
} 
elseif ($NumberC = range(22,42) { 
    $result = "Red"; 
} 
elseif ($NumberC = range(43,63) { 
    $result = "Blue"; 
} 
      //This goes on for a while    ... 
else { 
    $result = "Green"; 
} 

echo = $result; 

任何时候我这样做,结果总是给$ result赋值“Orange”。

我确定我在这里做错了,请帮忙!

+2

现在你正在做一个任务('=')。你想要做的是这样的:'($ NumberC> = 0 && $ NumberC Rizier123

+0

你也应该使用一个开关http://php.net/manual/en/control-structures.switch .php –

首先,你只用一个'='来进行比较,而它应该是'=='。第二个range()生成一个数组,你不能将一个整数与一个数组进行比较。第三,为什么当你可以检查$NumberC位于范围的最小值和最大值之间时,每次生成范围?

你的代码更改为:

$NumberA = rand(0,180); 
$NumberB = rand(0,180); 
$NumberC = $NumberA + $NumberB; 

if ($NumberC >= 0 && $NumberC <= 21) { 
    $result = "Orange"; 
} elseif ($NumberC >= 22 && $NumberC <= 42) { 
    $result = "Red"; 
} elseif ($NumberC >= 43 && $NumberC <= 63) { 
    $result = "Blue"; 
} else { 
    $result = "Green"; 
} 

echo $result; 

应当制定。希望这可以帮助。

+0

非常感谢!我是这样的新手! –

+0

@CoryBell不用担心人。如果它回答了您的问题,请随时将其标记为答案。欢呼 –

+0

好吧,这样的工作是正确的,但现在当我尝试使用Javascript的Ajax函数来获得结果并将其传递给一个函数,它总是作为0结果:\即时通讯假设它不能找到值.. –