php中0与NULL,False,“0”,\0的区别
生活随笔
收集整理的這篇文章主要介紹了
php中0与NULL,False,“0”,\0的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
先說明一下結論:0與NULL,False,“0”,“\0”的值相同,都以0存儲,但是類型不同,
再看一段實驗代碼:
<?php $test=0; if($test==''){echo '<br />在php中,0的值等同\'\''; //被輸出 } if($test===''){echo '<br />在php中,0的類型與\'\'一致'; //不被輸出 } else echo'<br />在php中,0的類型與\'\'不一致'; //被輸出if($test==NULL){echo '<br />在php中,0的值等同NULL'; //被輸出 } if($test===NULL){echo '<br />在php中,0的類型與NULL一致'; //不被輸出 } else echo'<br />在php中,0的類型與NULL不一致'; //被輸出if($test==false){echo '<br />在php中,0的值等同False'; //被輸出 } if($test===false){echo '<br />在php中,0的類型與False一致'; //不被輸出 } else echo'<br />在php中,0的類型與False不一致'; //被輸出if($test=="0"){echo '<br />在php中,0的值等同"0"'; //被輸出 } if($test==="0"){echo '<br />在php中,0的類型與"0"一致'; //不被輸出 } else echo'<br />在php中,0的類型與"0"不一致';//被輸出if($test=='\0'){echo '<br />在php中,0的值等同\'\\0\''; //被輸出 } if($test==='\0'){echo '<br />在php中,0的類型與\'\\0\'一致'; //不被輸出 } else echo'<br />在php中,0的類型與\'\\0\'不一致';//被輸出 ?>原因是在PHP中變量是以C語言的結構體來存儲的,空字符串和NULL,false,以及"\0"都是以值為0存儲的,其中這個結構體有個zend_uchar type;這樣的成員變量,他是用來保存變量的類型的,而空字符串的類型是string,NULL的類型是NULL,false是boolean。
注意:
1.NULL是一種特殊類型,在以下兩種情況下變量為NULL。
- $t=NULL;
- $t
參考: 點擊打開鏈接
點擊打開鏈接
總結
以上是生活随笔為你收集整理的php中0与NULL,False,“0”,\0的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 实战网页布局心得(一)
- 下一篇: php中的isset函数和empty函数