日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

php中0与NULL,False,“0”,\0的区别

發(fā)布時(shí)間:2025/3/19 php 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php中0与NULL,False,“0”,\0的区别 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

先說明一下結(jié)論:0與NULL,False,“0”,“\0”的值相同,都以0存儲(chǔ),但是類型不同,

再看一段實(shí)驗(yàn)代碼:

<?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的值等同F(xiàn)alse'; //被輸出 } 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語言的結(jié)構(gòu)體來存儲(chǔ)的,空字符串和NULL,false,以及"\0"都是以值為0存儲(chǔ)的,其中這個(gè)結(jié)構(gòu)體有個(gè)zend_uchar type;這樣的成員變量,他是用來保存變量的類型的,而空字符串的類型是string,NULL的類型是NULL,false是boolean。

注意:

1.NULL是一種特殊類型,在以下兩種情況下變量為NULL。

  • $t=NULL;
  • $t
2.'\0'是ASCII為0的字符,它的意思是字符串結(jié)束符。故而雖然'\0'的值等于0,但是$t='\0',empty($t)的返回值為False;而對(duì)于上面比較的其他為0的值,empty函數(shù)都返回True。
參考: 點(diǎn)擊打開鏈接
點(diǎn)擊打開鏈接

總結(jié)

以上是生活随笔為你收集整理的php中0与NULL,False,“0”,\0的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。