在 PHP 裡面,兩個比較運算式 "==" 及 "===" 的分別是,"==" 用作檢查變數的值是否相同;而 "==" 則會檢查變數的值及資料型態。

"==":

PHP:
  1. <?php
  2. $str_var = "123";
  3. if($str_var == 123){
  4.     echo "Yes";
  5. }else{
  6.     echo "No";
  7. }
  8. ?>

以上程式碼執行結果會輸入 "Yes",因為變數 $str_var 及整數 123 是相同的值,但如果改用 "===" 便會有不同的結果:

"==="

PHP:
  1. <?php
  2. $str_var = "123";
  3. if($str_var === 123){
  4.     echo "Yes";
  5. }else{
  6.     echo "No";
  7. }
  8. ?>

以上程式碼會輸入 "No",因為雖然 $str_var 及 123 的值是相同,但兩者的資料型態不同。 (用引號包著的 "123" 是字串;而沒有引號的 123 則是整數)

但如果將程式碼改成以下這樣,便會輸出 "Yes"

PHP:
  1. <?php
  2. $str_var = 123;
  3. if($str_var === 123){
  4.     echo "Yes";
  5. }else{
  6.     echo "No";
  7. }
  8. ?>