PHP Regular IF语句V.S Quickhand IF语句

时间:2013-08-04 18:02:14

标签: php if-statement

我的PHP代码段

function CheckNumber($number){
 if($number==100){
   return true;
 else{
   return false;
 };
}

我希望速记(三元运算符)if语句执行相同的操作,但这不起作用:

function CheckNumber($number){
  $result = ($number==100) ? return true : return false;
  echo $result;
}

我知道echo在这里肯定是错误的,但我应该怎么做才能将result的结果返回给函数?

1 个答案:

答案 0 :(得分:6)

return $number == 100;

==已经产生一个布尔值,不需要对它进行if并为它创建另一个布尔值。您也不需要将此中间布尔值分配给变量。

您的特定问题是return是一个声明,不能成为表达式的一部分。如果有的话,代码需要看起来像:

$result = $number == 100 ? true : false;
return $result;

但同样,这可以简化为上面的版本。