我見過這樣的事情在WordPress的使用:這個PHP技術叫做什麼?
if($aVariable=aFunction()){
// If aFunction() returned true
}
這是什麼叫和我在哪裏可以找到關於它的更多信息?
我見過這樣的事情在WordPress的使用:這個PHP技術叫做什麼?
if($aVariable=aFunction()){
// If aFunction() returned true
}
這是什麼叫和我在哪裏可以找到關於它的更多信息?
「內聯分配」就是我所說的。
它等效於:
$aVariable=aFunction();
if($aVariable){
// If aFunction() returned true
}
而如果不使用$ aVariable別的地方,這是毫無意義的做到這一點。 因此,其他地方需要一個有用的$ aVariable讀取。
除了當您需要多次檢查一個函數的結果時,它可以節省一些擊鍵次數之外,沒有什麼其他可以說的。
很多時候,它也只是一個錯字,意外地分配給$ aVariable而不是僅僅比較(儘管在這種情況下,評論似乎表明他們是這樣意思的)。 – Thilo
如果輸入錯誤是「==」與「=」,那麼這可能是正確的。我懷疑WordPress可能是相當不錯的,所以它不太可能是OP發現它的錯字。 –
它被稱爲「條件」。 documentation有詳細信息。
很確定OP指的是在'if'表達式內調用內聯函數,而不是在討論'if'語句_just_。 – nickb
@nickb:OP歡迎澄清她的問題,以解釋她實際上在問什麼...... –
這是可行的,因爲賦值表達式的值是賦值。
$foo = 'bar'
是轉讓表達式。該表達式將值'bar'
賦值給變量$foo
並且表達式作爲整體也導致值'bar'
。
if()
期望它將評估爲true
或false
括號內的表達式。
所以它歸結如下:
if ($aVariable = aFunction())
if (value of expression, which is whatever aFunction() returned)
if (true/false evaluation of value of expression)
我不知道是否有特定的名稱爲。
首先執行'aFunction()',然後將其返回值分配給名爲'$ aVariable'的變量,然後將返回值用作if語句的布爾值。這就是它的全部。 –
這個問題爲什麼downvoted?如果你對這個問題有疑問,至少應該有禮貌地告訴@Linksku爲什麼! –