我對我在閱讀的PHP最佳實踐書中發現的某些內容有疑問。在if結構中編寫表達式的最佳方式
做下列測試的最佳方法是什麼?
if("value" == $variable){}
和
if($variable == "value"){}
我對我在閱讀的PHP最佳實踐書中發現的某些內容有疑問。在if結構中編寫表達式的最佳方式
做下列測試的最佳方法是什麼?
if("value" == $variable){}
和
if($variable == "value"){}
其中比較事項的順序是,如果你把你"value" === $value
避免意外分配(即$value = "value"
)的唯一途徑。
如果你正在尋找不同的寫作條件,你應該檢查出the ===
comparison。總的來說,避免類型強制是一種很好的做法。
它的偏好,首先是被稱爲Yoda conditional這有助於防止意外地爲變量賦值的if語句和掩蔽邏輯錯誤,但是,它可以說是難以閱讀(它讀起來就像尤達說話吧。)
你的例子是一樣的,但你應該檢查$變量被設置
if(isset($variable) && $variable == "value"){
}
這是相同的。
有些人喜歡if("value" == $variable)
,因爲如果你犯了一個錯誤,只寫一個=
,它會抱怨。
如果您使用此if("value" == $variable){}
,它將從我們一般做的錯誤能節省的地方==
看到使用
=
:尤達條件(http://stackoverflow.com/a/2430307/142162) – 2012-02-07 14:25:17