有人能告訴我這個php語句中的條件是什麼?PHP條件返回語句?
return $node->type == 'article' ? mymodule_page_article($node) : mymodule_page_story($node);
對不起,如果這是不是要問這樣一個簡單的問題的地方,但我發現很難查找特定的代碼結構(特別是當我不知道它的名字)。
有人能告訴我這個php語句中的條件是什麼?PHP條件返回語句?
return $node->type == 'article' ? mymodule_page_article($node) : mymodule_page_story($node);
對不起,如果這是不是要問這樣一個簡單的問題的地方,但我發現很難查找特定的代碼結構(特別是當我不知道它的名字)。
這是一個ternary operator。
這相當於
if($node->type == 'article') {
return mymodule_page_article($node);
} else {
return mymodule_page_story($node);
}
它的作用是:如果?
前的東西是真實的,返回第一條(?
和:
之間的東西)的表達式的結果。如果它是假的,那麼它返回第二個子句的結果(:
之後的內容)。
這是一個三元表達式。
條件爲$節點 - >類型==「文章」,如果這是真的它mymodule_page_article($節點)其他mymodule_page_story($節點)
如果節點類型等於「文章」做mymodule_page_article($node)
,如果是不相等的,那麼做mymodule_page_story($node)
這是三元運算符?:
和可以擴展如下:
if ($node->type == 'article') {
return mymodule_page_article($node);
} else {
return mymodule_page_story($node);
}
這相當於:
if($node->type == 'article')
{
return mymodule_page_article($node);
}
else
{
return mymodule_page_story($node);
}
這被稱爲三元運算符。有關詳細信息,請參閱此處的部分:http://www.php.net/operators.comparison