您好,登錄后才能下訂單哦!
這篇文章主要介紹了PHP中的isset()和!empty()函數(shù)有什么區(qū)別,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
1.isset()
isset ( mixed $var , mixed $... = ? ) : bool
var:要檢查的變量。
返回值:如果 var 存在并且值不是 null 則返回 true,否則返回 false。
PS:如果已經(jīng)使用 unset()
釋放了一個變量之后,它將不再是 isset()。若使用 isset()
測試一個被設(shè)置成 null 的變量,將返回 false。同時要注意的是 null
字符("\0")并不等同于 PHP
的 null 常量。如果一次傳入多個參數(shù),那么 isset()
只有在全部參數(shù)都以被設(shè)置時返回 true
計算過程從左至右,中途遇到?jīng)]有設(shè)置的變量時就會立即停止。
<?php $num = '0'; if( isset( $num ) ) { print_r(" $num is set with isset "); } echo "<br>"; // 聲明一個空數(shù)組 $array = array(); echo isset($array['geeks']) ? 'array is set.' : 'array is not set.'; ?>
輸出:
0 is set with isset functionarray is not set. array is not set.
2.empty()
empty ( mixed $var ) : bool
var:待檢查的變量
返回值:當(dāng)var存在,并且是一個非空非零的值時返回 false
否則返回 true
.
<?php $temp = 0; if (empty($temp)) { echo $temp . ' is considered empty'; } echo "\n"; $new = 1; if (!empty($new)) { echo $new . ' is considered set'; } ?>
輸出
0 is considered empty 1 is considered set
以下內(nèi)容會被判定為空:
"" (空字符串)
0 (作為整數(shù)的0)
0.0 (作為浮點數(shù)的0)
"0" (作為字符串的0)
null
fals
earray() (一個空數(shù)組)
$var; (一個聲明了,但是沒有值的變量)
3.二者異同
isset()和!empty()
函數(shù)類似,兩者都將返回相同的結(jié)果。但唯一的區(qū)別是!當(dāng)變量不存在時,empty()
函數(shù)不會生成任何警告或電子通知。它足以使用任何一個功能。通過將兩個功能合并到程序中會導(dǎo)致時間流逝和不必要的內(nèi)存使用。
<?php $num = '0'; if( isset ( $num ) ) { print_r( $num . " is set with isset function"); } echo "\n"; $num = 1; if( !empty ( $num ) ) { print_r($num . " is set with !empty function"); } ?>
0 is set with isset function 1 is set with !empty function
感謝你能夠認真閱讀完這篇文章,希望小編分享的“PHP中的isset()和!empty()函數(shù)有什么區(qū)別”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。