PHP中isset、empty的用法與區(qū)別示例詳解
前言
在編寫(xiě)程序調(diào)用變量時(shí),遇到未定義的變量時(shí),會(huì)報(bào)錯(cuò),這是就需要我們對(duì)變量先進(jìn)行判斷,再進(jìn)行相關(guān)操作。
這里主要記錄兩個(gè)變量判斷函數(shù)的使用:isset()與empty()
1、isset — 檢測(cè)變量是否已設(shè)置并且非 NULL
isset ( mixed $var [, mixed $... ] ) : bool
如果已經(jīng)使用 unset() 釋放了一個(gè)變量之后,它將不再是 isset()。
若使用 isset() 測(cè)試一個(gè)被設(shè)置成 NULL 的變量,將返回 FALSE。
同時(shí)要注意的是 null 字符("\0")并不等同于 PHP 的 NULL 常量。
注:如果一次傳入多個(gè)參數(shù),那么 isset() 只有在全部參數(shù)都以被設(shè)置時(shí)返回 TRUE 計(jì)算過(guò)程從左至右,中途遇到?jīng)]有設(shè)置的變量時(shí)就會(huì)立即停止。
2、empty — 檢查一個(gè)變量是否為空
empty ( mixed $var ) : bool
當(dāng)一個(gè)變量并不存在,或者它的值等同于FALSE,那么它會(huì)被認(rèn)為不存在。
如果變量不存在的話(huà),empty()并不會(huì)產(chǎn)生警告。
使用 empty 判斷以下變量時(shí),會(huì)被認(rèn)為是空的:
"" (空字符串) 0 (作為整數(shù)的0) 0.0 (作為浮點(diǎn)數(shù)的0) "0" (作為字符串的0) NULL FALSE array() (一個(gè)空數(shù)組)
關(guān)于 isset() 與 empty() 的判斷變量的區(qū)別:
1、判斷方式不同
isset() 判斷變量是否聲明并且不是 NULL
empty() 一個(gè)變量是否為空
2、判斷特殊變量是否存在時(shí)的區(qū)別
<?php $a = ""; // 空字符串 var_dump(isset($a)); // true var_dump(!empty($a)); // false echo '<br/>'; $b = 0; // 作為整數(shù)的0 var_dump(isset($b)); // true var_dump(!empty($b)); // false echo '<br/>'; $c = 0.0; // 作為浮點(diǎn)數(shù)的0 var_dump(isset($c)); // true var_dump(!empty($c)); // false echo '<br/>'; $d = "0"; // 作為字符串的0 var_dump(isset($d)); // true var_dump(!empty($d)); // false echo '<br/>'; $e = NULL; var_dump(isset($e)); // false var_dump(!empty($e)); // false echo '<br/>'; $f = FALSE; var_dump(isset($f)); // true var_dump(!empty($f)); // false echo '<br/>'; $g = array(); // 一個(gè)空數(shù)組 var_dump(isset($g)); // true var_dump(!empty($g)); // false echo '<br/>';
總結(jié)
到此這篇關(guān)于PHP中isset、empty用法與區(qū)別的文章就介紹到這了,更多相關(guān)PHP isset、empty的用法與區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- PHP isset()與empty()的使用區(qū)別詳解
- PHP中empty,isset,is_null用法和區(qū)別
- php中is_null,empty,isset,unset 的區(qū)別詳細(xì)介紹
- PHP isset()與empty()的使用區(qū)別詳解
- 一張表搞清楚php is_null、empty、isset的區(qū)別
- PHP中的empty、isset、isnull的區(qū)別與使用實(shí)例
- isset和empty的區(qū)別
- php empty()與isset()區(qū)別的詳細(xì)介紹
- PHP中empty和isset對(duì)于參數(shù)結(jié)構(gòu)的判斷及empty()和isset()的區(qū)別
- PHP isset()及empty()用法區(qū)別詳解
相關(guān)文章
php及codeigniter使用session-cookie的方法(詳解)
下面小編就為大家?guī)?lái)一篇php及codeigniter使用session-cookie的方法(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04php array_filter除去數(shù)組中的空字符元素
php array_filter除去數(shù)組中的空字符元素,array_filter() 函數(shù)根據(jù)回調(diào)函數(shù)過(guò)濾數(shù)組中的值,省略回調(diào)函數(shù)則默認(rèn)過(guò)濾空值,需要的朋友可以參考下。2011-11-11php 數(shù)組的合并、拆分、區(qū)別取值函數(shù)集
都說(shuō)PHP的數(shù)組功能很強(qiáng)大、只有真正用于項(xiàng)目工作當(dāng)中才能夠感受得到,至少我認(rèn)為是,現(xiàn)在已慢慢的發(fā)覺(jué)其中的奧秘了……2010-02-02php實(shí)現(xiàn)過(guò)濾表單提交中html標(biāo)簽的方法
這篇文章主要介紹了php實(shí)現(xiàn)過(guò)濾表單提交中html標(biāo)簽的方法,并以<br/>標(biāo)簽為例演示了過(guò)濾的方法,非常實(shí)用,需要的朋友可以參考下2014-10-10PHP中ini_set和ini_get函數(shù)的用法小結(jié)
本篇文章主要是對(duì)PHP中ini_set和ini_get函數(shù)的用法進(jìn)行了總結(jié)介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02PHP讀取txt文件的內(nèi)容并賦值給數(shù)組的代碼
使用file_get_contents()獲取txt文件的內(nèi)容,然后通過(guò)explode()把獲得的字符串轉(zhuǎn)化為數(shù)組。獲得數(shù)組長(zhǎng)度可以使用count()函數(shù)2011-11-11高質(zhì)量PHP代碼的50個(gè)實(shí)用技巧必備(上)
這篇文章主要為大家分享了50個(gè)高質(zhì)量PHP代碼的實(shí)用技巧,大家必備的php實(shí)用代碼,感興趣的小伙伴們可以參考一下2016-01-01