2012-08-08 45 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; 
}