本篇內容介紹了“PHP中的運算符===為什么比==快”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
PHP中的===和==運算符,這兩個運算符屬于PHP中的比較運算符。
===
運算符稱為絕對等于
,==
運算符稱為等于
。
語法示例:
$a == $b
,如果在類型轉換后 $a 等于 $b,則為 TRUE;
$a === $b
,如果 $a 等于 $b,并且兩者的類型相同,則為 TRUE;
如果操作數的類型不同,那么==和===將產生不同的結果。在這種情況下,操作符的速度會有所不同,因為==將執行類型轉換,然后進行比較。
如果操作數是相同類型的,那么==和===將產生相同的結果。在這種情況下,這兩個操作符的速度幾乎相同,因為任何操作符都不執行類型轉換。
==操作符會臨時轉換數據類型,以查看其值是否等于另一個操作數,而===不需要進行任何類型轉換,因此完成的工作更少,這也就使得它比==操作符快。
代碼示例1:
<?php var_dump(0 == "a"); // 1 == 1 -> true var_dump("1" == "01"); // 10 == 10 -> true var_dump("10" == "1e1"); // 100 == 100 -> true var_dump(100 == "1e2"); var_dump(0 === "a"); // "1" === "01" -> false var_dump("1" === "01"); // "10" === "1e1" -> false var_dump("10" === "1e1"); // 100 == "1e2" -> false var_dump(100 === "1e2"); switch ("a") { case 0: echo "第一種情況"; break; case "a": echo "第二種情況"; break; }
輸出:
boolean true boolean true boolean true boolean true boolean false boolean false boolean false boolean false 第一種情況
代碼示例2:
<?php var_dump(1 == TRUE); var_dump(0 == FALSE); var_dump(1 === TRUE); var_dump(0 === FALSE);
輸出:
boolean true boolean true boolean false boolean false
注意: === 運算符執行“類型安全比較”,僅當兩個操作數具有相同的類型和值時它才會返回 true,而如果只比較值就可以使用==。
“PHP中的運算符===為什么比==快”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。