假設我有一個總是字符串的變量。==和=== php中的運算符
現在把下面的代碼:
if($myVar === "teststring")
注:$myVar
將永遠是一個字符串,所以我的問題是
這是更快/最佳使用===
(恆等式)或==
(平等)?
假設我有一個總是字符串的變量。==和=== php中的運算符
現在把下面的代碼:
if($myVar === "teststring")
注:$myVar
將永遠是一個字符串,所以我的問題是
這是更快/最佳使用===
(恆等式)或==
(平等)?
對身份的測試總是更快,因爲PHP不必鍵入Juggle來評估比較。但是,我認爲速度差異處於納秒級,完全可以忽略不計。
相關閱讀:
一般來說,當我編碼時,我使用== over ===,但是,使用標識更精確,而且稍微更快(差異最小)。
兩者之間的差異可能與您需要的無關。
恕我直言'=='應該避免,因爲它需要更多的人力來正確閱讀如何類型雜耍影響語句(特別是在PHP中)。使用'==='它可以是完全匹配,也可以不是。 – 2010-06-16 13:06:32
我同意,並且在仔細研究之後 - 我會修改我的陳述。 – 2010-06-16 13:09:27
===
會稍快一些,但更重要的是,它會強制$myVar
將是一個字符串,所以你不必擔心它可能是其他類型的影響。
我會在這種情況下使用==,因爲您並不在乎$ myVar的類型。我非常肯定速度是相同的(它是如此微不足道,即使在一個巨大的循環)。 – AlexV 2010-06-16 13:03:46
如果您決定使用'==',則反轉條件('「teststring」== $ myVar')有助於捕獲可能的拼寫錯誤(如果您錯過了兩個等號中的一個,則會更改' $ myVar'並且有一個永遠爲真的if條件!)。 – MartinodF 2011-11-15 03:52:48