php中0,空,null和false的區別【簡記】

來源:互聯網
上載者:User

標籤:結果   hidden   net   color   http   target   關於   區別   href   

 1 $a =  0;  2 $b="0";  3 $c= ‘‘;  4 $d= null;  5 $e = false; 6   7 echo "5個變數-原始測試類型"; 8     var_dump($a);//int 0 9     var_dump($b);//string ‘0‘10     var_dump($c);//string ‘‘11     var_dump($d);//null12     var_dump($e);//boolean false13  14 echo "<h4>empty測試</h4>";15     var_dump(empty($a));//true16     var_dump(empty($b));//true17     var_dump(empty($c));//true18     var_dump(empty($d));//true19     var_dump(empty($e));//true20  21 echo "<hr>";22     var_dump(isset($a));//true23     var_dump(isset($b));//true24     var_dump(isset($c));//true25     var_dump(isset($d));//【false】 見結論一26     var_dump(isset($e));//true27  28 echo "<h4>(==)雙等式測試</h4>";29     var_dump($a == $b);//true30     var_dump($a == $c);//true31     var_dump($a == $d);//true32     var_dump($a == $e);//true !!33  34     var_dump($b == $c);//【false】見結論二35     var_dump($b == $d);//【false】見結論二36     var_dump($b == $e);//true37  38     var_dump($c == $d);//true39     var_dump($c == $e);//true40  41 echo "<h4>(===)三等式測試</h4>";42     var_dump($a === $b);//false43     var_dump($a === $c);//false44     var_dump($a === $d);//false45     var_dump($a === $e);//false46  47     var_dump($b === $c);//false48     var_dump($b === $d);//false49     var_dump($b === $e);//false50  51     var_dump($c === $d);//false52     var_dump($c === $e);//false
總結:對於 【 0‘0‘ ‘‘null false】五種類型empty操作以上五個變數,都返回false強等於( ===)比較 都為false,同強語言結果(三個等號比較不但要比較值,而且要比較類型)但對於( ==)比較,需要注意string類型,涉及到底層結構與類型轉換 結論一:關於變數類型的理解1.null為不存在之意:php底層的zval空間裡(結構見下方)沒有存其value值,只儲存了一個type標誌其 IS_NULL(所以解釋了 empty(null)=true,isset(null)=false ,isset(‘‘)=true)2.【 0 ;  ‘0‘ ;  ‘‘ ; false 】:這四個為存在,php底層是開闢zval空間儲存,有value,有type 結論二:1、string ‘0‘與 string  ‘‘ 不相等,(想一下就明白,同類型比較【1個長度】的字串怎麼可能 等於 【0個長度】 的字串)2、int 0 卻和 string  ‘‘ 空相等,(非同類形比較,php會做類型轉換)3、string ‘0‘ null 不相等,int 0 null 相等

 

文章轉自:70217267

php中0,空,null和false的區別【簡記】

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.