首頁  >  文章  >  後端開發  >  php中null和empty的差別是什麼

php中null和empty的差別是什麼

WBOY
WBOY原創
2022-02-21 15:17:042624瀏覽

php中null和empty的區別:empty是一個函數,用來檢查一個變數是否為空,變數為空則傳回true;而null是一種資料類型,表示一個變數沒有值為空,當變數被賦值為mull、沒有被賦值或被unset()時都表示為null。

php中null和empty的差別是什麼

本文操作環境:Windows10系統、PHP7.1版、Dell G3電腦。

php中null和empty的差別是什麼

null 表示表示一個變數沒有值。變數為null有三種情況:

1.被賦值為 NULL 。

2. 尚未被賦值。

3. 被 unset() 。

empty() 函數用來檢查一個變數是否為空。

empty() 判斷變數是否被認為是空的。當一個變數並不存在,或它的值等同於 FALSE,那麼它會被認為不存在。如果變數不存在的話,empty()並不會產生警告。

empty() 5.5 版本之後支援表達式了,而不僅僅是變數。

語法

bool empty ( mixed $var )

參數說明:

$var:待檢查的變數。

注意:在 PHP 5.5 之前,empty() 僅支援變數;任何其他東西將會導致一個解析錯誤。換言之,下列程式碼不會生效:

empty(trim($name))

作為替代,應該使用:

trim($name) == false

empty() 並不會產生警告,即使變數並不存在。這意味著 empty() 本質上與 !isset($var) || $var == false 等價。

當 var 存在,且非空非零的值時傳回 FALSE 否則回傳 TRUE。

以下的變數會被認為是空的:

  • "" (空字串)

  • 0 (作為整數的0)

  • 0.0 (作為浮點數的0)

  • "0" (作為字串的0)

  • NULL

  • FALSE

  • #array() (一個空數組)

  • $var; (一個聲明了,但是沒有值的變數)

實例

推薦學習:《PHP影片教學

以上是php中null和empty的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn