今天看到毛毛蟲給大家做了個空字串和null的區分(
),感覺對基礎知識不紮實的小鳥(比如我)很有幫助,夜深了,一時來興致,查了很多「權威資料」寫一篇文章貼到這裡和大家一起補習一下基礎知識,當然,我的標題寫的並不嚴謹,內容也只是個人的總結,不足之處請高手多補充,話不多說,正文如下:
1.echo和print的區別
php中echo和print的功能基本相同(輸出),但是兩者之間還是有細微差別的。echo輸出後沒有返回值,但print有返回值,當其執行失敗時返回flase。因此可以作為乙個普通函式來使用,例如執行下面的**後變數$r的值將為1。
**:$r = print
"hello world"
;這意味著print可用在一些複雜的表示式中,而echo則不行。但是,因為echo語句不要求返回任何數值,所已在**中echo語句的執行效率要略微快於print語句。
2.include與require的區別
include()與require()的功能也基本相同(包含),但在用法上也有一些不同,include()是有條件包含函式,而require()則是無條件包含函式。例如在下面**中,如果變數$a為真,則將包含檔案a.php:
**:if($a)
而require()則和include()不同,不管$a取何值,下面的**將把檔案a.php包含進檔案裡:
**:if($a)
在錯誤處理方面,使用include語句,如果發生包含錯誤,程式將跳過include語句,雖然會顯示錯誤資訊但是程式還是會繼續執行!但requre卻會給你來個致命錯誤。
當然,從字面意思上我們也可以理解七分:requre是很強硬的請求、要求的意思。
3.require_once()和include_once()語句
題外話了,因為長的像,簡單require_once()和include_once()語句分別對應於require()和include()語句。 require_once() 和include_once()語句主要用於需要包含多個檔案時,可以有效地避免把同一段**包含進去而出現函式或變數重複定義的錯誤。
4.空字串('')和null的區別
php中空字串和null都是以值為0儲存的,但是他們的型別並不一樣,你可以試一下echo gettype('');和echo gettype(null);你會發現他們列印出來的分別是string和null,當然還有0也容易混淆,你可以試試echo gettype(0);列印一下型別,會發現0的型別是integer(整型),可見字串('')、null和0是「等值」但不等型別。
5.!isset和empty的區別
從字面意思上我們就可以明白:empty是判斷乙個變數是否為「空」,而isset則是判斷乙個變數是否已經設定。但是這裡有一點絕對要注意起來:當乙個變數值為0,empty認為這個變數同等於空,即相當於沒有設定。比如當我們檢測$id 變數的時候,當$id=0 ,用empty和isset來檢測變數$id是否已經配置,兩都將返回不同的值:empty認為沒有配置,isset則能夠取得 $id 的值,看下邊例子:
**?:
$id=0;
empty(
$id)?print
"我是空的"
"我是$id ."
; //結果:我是空的
!isset(
$id)?print
"我是空的"
"我是$id ."
;//結果:我是0
6.==(等)和===(恒等)的區別
回顧上面第四條空字串("")和null的區別,再來看乙個例子:
**:''
== null
;''
===
null
; 執行之後你會發現第乙個為true,而第二個則為false!可見==只是比較值是否相等,而===則不但比較值,還會比較型別,更為嚴格。
基礎補習 PHP易混淆函式的區分
今天看到毛毛蟲給大家做了個空字串和null的區分 感覺對基礎知識不紮實的小鳥 比如我 很有幫助,夜深了,一時來興致,查了很多 權威資料 寫一篇文章貼到這裡和大家一起補習一下基礎知識,當然,我的標題寫的並不嚴謹,內容也只是個人的總結,不足之處請高手多補充,話不多說,正文如下 1.echo和print的...
PHP易混淆函式的區分方法及意義
1.echo和print的區別 php中echo和print的功能基本相同 輸出 但是兩者之間還是有細微差別的。echo輸出後沒有返回值,但print有返回值,當其執行失敗時返回flase。因此可以作為乙個普通函式來使用,例如執行下面的 後變數 r的值將為1。複製php內容到剪貼簿 php r pr...
PHP易混淆函式的區分方法及意義
1.echo和print的區別 php中echo和print的功能基本相同 輸出 但是兩者之間還是有細微差別的。echo輸出後沒有返回值,但print有返回值,當其執行失敗時返回flase。因此可以作為乙個普通函式來使用,例如執行下面的 後變數 r的值將為1。複製php內容到剪貼簿 php r pr...