首頁  >  文章  >  後端開發  >  php === 和==的差別是什麼

php === 和==的差別是什麼

藏色散人
藏色散人原創
2021-11-17 10:10:466388瀏覽

php ===和==的區別:1、在PHP中===表示全等運算符,而==表示等於運算符;2、如果等於運算符兩邊的值相等,則傳回true,而如果全等運算子兩邊的值相等但類型不等,則傳回false。

php === 和==的差別是什麼

本文操作環境:windows7系統、PHP7.1版、DELL G3電腦

php === 和==的差別是什麼?

php中的==和===的用法及區別

在開發中進場遇到數值匹配的問題,那麼在進行匹配時,遇到下面的情況,你覺得結果是什麼?

<?php 
$str = "0dff";
if (0 == $str) {
echo "true";
}else{
echo "false";
}
 
?>

出乎意料的上面的這個程式的輸出結果是true,也就是說在編譯中程式預設0和0dff是相等的。這是因為在執行關係運算」==「時要求運算子兩邊的資料型別必須一致,所以等號右邊的字串被強制 轉換為了整型0。

這也是一系列弱型別語言的缺點。在php中提供了“===”來解決這個問題。

<?php 
$str = "0dff";
if (0 === $str) {
echo "true";
}else{
echo "false";
}
 
?>

這個程式的輸出是false。

全等於操作流程如下:

 1.判斷全等於運算子2邊的資料型別是否相同若不相同,則傳回false

 2.判斷全等於操作符2邊的值是否相等,如果不相等,則傳回false

 3.最後將上面2步驟的操作進行與操作。傳回與操作的結果。

附:

php === 和==的差別是什麼

推薦學習:《PHP影片教學

以上是php === 和==的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn