摘要:用法如果是非空或非零的值,則返回。如果已經(jīng)使用釋放了一個(gè)變量之后,它將不再是。若使用測(cè)試一個(gè)被設(shè)置成的變量,將返回。同時(shí)要注意的是一個(gè)字節(jié)并不等同于的常數(shù)。
1.empty用法
bool empty ( mixed var)
如果 var 是非空或非零的值,則 empty() 返回 FALSE。換句話(huà)說(shuō),""、0、"0"、NULL、FALSE、array()、var $var; 以及沒(méi)有任何屬性的對(duì)象都將被認(rèn)為是空的,如果 var 為空,則返回 TRUE
2.isset()
isset -- 檢測(cè)變量是否設(shè)置
描述
bool isset ( mixed var [, mixed var [, ...]])
如果 var 存在則返回 TRUE,否則返回 FALSE。
如果已經(jīng)使用 unset() 釋放了一個(gè)變量之后,它將不再是 isset()。若使用 isset() 測(cè)試一個(gè)被設(shè)置成 NULL 的變量,將返回 FALSE。同時(shí)要注意的是一個(gè) NULL 字節(jié)("0")并不等同于 PHP 的 NULL 常數(shù)。
如果檢查一個(gè)數(shù)組中是否存在某個(gè)key,當(dāng)數(shù)組中存在這個(gè)key并且對(duì)于的value不為null時(shí)返回true
注意:如果變量不存在,isset()和empty()都不會(huì)報(bào)錯(cuò);is_null(),is_numeric()會(huì)報(bào)錯(cuò)
用來(lái)判斷常量會(huì)報(bào)錯(cuò),比如:null,true,false,‘’,‘123adf’,123
如何區(qū)別如下數(shù)組中 [0,"",null] 三個(gè)元素?
(1)區(qū)別0:
$a = 0; isset($a) && is_numeric($a) === true
(2)區(qū)別""
$a = ""; empty($a) && $a=== ""
(3)區(qū)別null
$a = null; is_null($a); 最好使用 === NULL 這樣速度更快
另外在做表單提交的時(shí)候可能經(jīng)常要檢測(cè)一個(gè)變量是否存在,假如$_REQUEST["status"] = 0;
使用empty($_REQUEST["status"])返回true,但是使用isset($_REQUEST["status"]) 判斷就不是空
(4)count();
echo count(123); //1 echo count(null); //0 echo count(false); //1 echo count(true); //1 echo count("adds"); //1 echo count(array()); //0 echo count(array(array())); //1 count()判斷對(duì)象返回也是1,判斷數(shù)組是返回?cái)?shù)組的元素個(gè)數(shù)
參考資料:http://www.laruence.com/2009/...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/22365.html
摘要:如果還有人問(wèn)你兩者區(qū)別,馬上甩出這種圖有興趣可以往下閱讀,官方手冊(cè)給出的例子手冊(cè)這是一張將區(qū)別的表格,從表格中我們可以發(fā)現(xiàn)返回值等同返回值等同。 簡(jiǎn)單談一下isset和empty的區(qū)別? 如果你是在面試,碰巧面試官提了這個(gè)問(wèn)題。你可以這樣回答: 如果變量值為0、空字符串、空數(shù)組等等,empty認(rèn)為它是空的,而isset認(rèn)為它不是空的。 如果變量不存在,isset和empty都認(rèn)為它是...
摘要:為什么變量的值為字符串,但同時(shí)會(huì)是空值呢讓我們?cè)谧兞可蠂L試使用其它一些函數(shù)來(lái)進(jìn)行判斷吧以上結(jié)果為譯者注這邊的結(jié)果可能存在問(wèn)題的結(jié)果同樣為,可以到這里去運(yùn)行下查看結(jié)果。和函數(shù)執(zhí)行結(jié)果符合預(yù)期判斷,唯獨(dú)函數(shù)返回了錯(cuò)誤結(jié)果。 本文首發(fā)于 震驚 php empty 函數(shù)判斷結(jié)果為空,但實(shí)際值卻為非空,轉(zhuǎn)載請(qǐng)注明出處。 最近我在一個(gè)項(xiàng)目中使用 empty 時(shí)獲取到了一些意料之外的結(jié)果。下面是我處...
摘要:函數(shù)使用格式判斷變量是否為空。對(duì)于,如果變量被如的函數(shù)設(shè)為,則函數(shù)會(huì)返回。,到分支,,返回?cái)?shù)組元素的數(shù)量,為空,因此為,,,因此返回。 近日被問(wèn)到PHP中empty和isset函數(shù)時(shí)怎么判斷變量的,剛開(kāi)始我是一臉懵逼的,因?yàn)槲易约阂仓皇且恢虢猓瑸榱伺湔嬲脑恚s緊翻開(kāi)源碼研究研究。經(jīng)過(guò)分析可發(fā)現(xiàn)兩個(gè)函數(shù)調(diào)用的都是同一個(gè)函數(shù),因此本文將對(duì)兩個(gè)函數(shù)一起分析。 我在github有對(duì)P...
摘要:常用判斷條件的種類(lèi)變量例如比較運(yùn)算符例如邏輯運(yùn)算符例如具體類(lèi)型判斷例如等變量無(wú)論變量是什么類(lèi)型,都會(huì)轉(zhuǎn)成類(lèi)型空字符串空數(shù)組都是數(shù)值字符串都是類(lèi)型的都是類(lèi)型有三種情況定義并賦值為定義不賦值不定義不存在的主要是用于判斷類(lèi)型的,其他類(lèi)型無(wú)論什么值 常用判斷條件的種類(lèi) 變量 例如:$var isset() empty() 比較運(yùn)算符 例如:> < == != === !== 邏輯運(yùn)算符 例如...
摘要:規(guī)定要反轉(zhuǎn)的字符串。參考文檔實(shí)現(xiàn)字符串翻轉(zhuǎn)包含中文漢字參考處理漢字官方文檔函數(shù)最下面給出了支持的方案三用法區(qū)別以及之間關(guān)系用法如果是非空或非零的值,則返回。若想檢測(cè)常量是否已設(shè)置,可使用函數(shù)。 一、foreach 第一題: //1.for循環(huán)執(zhí)行幾次 //for($i=0;$i=1;$i++){ // echo $i; //} $i==1條件很成立,死循環(huán) for($i=0;$...
閱讀 2910·2021-11-11 16:55
閱讀 958·2021-09-28 09:36
閱讀 3807·2021-09-22 15:22
閱讀 2240·2021-09-06 15:12
閱讀 1772·2021-08-19 10:55
閱讀 2896·2019-08-30 12:52
閱讀 504·2019-08-29 14:03
閱讀 1212·2019-08-29 12:27