2012-08-08 43 views
1

可能重复:
What is the PHP ? : operator called and what does it do?PHP语法回报

有人可以告诉我这是什么 '回归' 的PHP代码意味着/做:

return ($status=='SUCCESS' && $blocked=='YES') ? $reason : false; 

我熟悉php中常规的return $variable类型的语句,但是我没有得到具体的括号()a nd?问号和“:false”确实。

(这是一个PHP函数的末尾return语句)

+0

几乎(其非常相似,但环节的问题缺乏&&)。我在搜索时没有找到它。 – 2012-08-08 00:46:22

+0

是的,对不起,我被打断了。这是错过这个非常重要的问题在这里作为参考:[参考 - 这个符号在PHP中意味着什么?](http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in- php) - 当你运行某个你不明白的符号时,这是一个非常好的参考(在手册旁边,有时甚至很难搜索这些,这就是为什么该参考值得加书签)。 – hakre 2012-08-08 01:03:53

回答

2

这是一个ternary statement。它基本上是if/else的简写符号。

在您的例子会读到这样:如果$status等于“成功”和$blocked等于“是”回归$reason,否则,返回false;

+0

感谢您的完美解释 - 正是我需要知道的。 – 2012-08-08 00:42:49

1

这是一个三元,或有条件的经营者,这是一样的,如果你有:

if($status=='SUCCESS' && $blocked=='YES'){ 
return $reason;} 
else{ 
return false; 
} 
0

这意味着与此相同:

if($status == 'SUCCESS' && $blocked == 'YES') 
{ 
    return $reason; 
} 
else 
{ 
    return false; 
}