關於 PHP, Linux, Open Source 及個人生活記載的網誌。
RSS icon
  • “==” 及 “===” 在 PHP 的分別

    Posted on January 23rd, 2009 Sam Tang 1 comment

    在 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. ?>


     

    One response to ““==” 及 “===” 在 PHP 的分別”

    1. javascript 也是一樣.

    Leave a reply

    *
    To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
    Click to hear an audio file of the anti-spam word