PHP判斷數(shù)組是否為空的常用方法(五種方法)
本文介紹了PHP開發(fā)中遇到的數(shù)組問題,這里介紹了判斷PHP數(shù)組為空的5種方法,有需要的朋友可以借鑒參考一下。
1. isset功能:判斷變量是否被初始化
說明:它并不會(huì)判斷變量是否為空,并且可以用來判斷數(shù)組中元素是否被定義過
注意:當(dāng)使用isset來判斷數(shù)組元素是否被初始化過時(shí),它的效率比array_key_exists高4倍左右
<?php $a = ''; $a['c'] = ''; if (!isset($a)) echo '$a 未被初始化' . ""; if (!isset($b)) echo '$b 未被初始化' . ""; if (isset($a['c'])) echo '$a 已經(jīng)被初始化' . ""; // 顯示結(jié)果為 // $b 未被初始化 // $a 已經(jīng)被初始化
2. empty功能:檢測變量是否為”空”
說明:任何一個(gè)未初始化的變量、值為 0 或 false 或 空字符串”” 或 null的變量、空數(shù)組、沒有任何屬性的對(duì)象,都將判斷為empty==true
注意1:未初始化的變量也能被empty檢測為”空”
注意2:empty只能檢測變量,而不能檢測語句
<?php $a = 0; $b = ''; $c = array(); if (empty($a)) echo '$a 為空' . ""; if (empty($b)) echo '$b 為空' . ""; if (empty($c)) echo '$c 為空' . ""; if (empty($d)) echo '$d 為空' . "";
3. var == null功能:判斷變量是否為”空”
說明:值為 0 或 false 或 空字符串”” 或 null的變量、空數(shù)組、都將判斷為 null
注意:與empty的顯著不同就是:變量未初始化時(shí) var == null 將會(huì)報(bào)錯(cuò)。
<?php $a = 0; $b = array(); if ($a == null) echo '$a 為空' . ""; if ($b == null) echo '$b 為空' . ""; if ($c == null) echo '$b 為空' . ""; // 顯示結(jié)果為 // $a 為空 // $b 為空 // Undefined variable: c
4. is_null功能:檢測變量是否為”null”
說明:當(dāng)變量被賦值為”null”時(shí),檢測結(jié)果為true
注意1:null不區(qū)分大小寫:$a = null; $a = NULL 沒有任何區(qū)別
注意2:僅在變量的值為”null”時(shí),檢測結(jié)果才為true,0、空字符串、false、空數(shù)組都檢測為false
注意3:變量未初始化時(shí),程序?qū)?huì)報(bào)錯(cuò)
<?php $a = null; $b = false; if (is_null($a)) echo '$a 為NULL' . ""; if (is_null($b)) echo '$b 為NULL' . ""; if (is_null($c)) echo '$c 為NULL' . ""; // 顯示結(jié)果為 // $a 為NULL // Undefined variable: c
5. var === null功能:檢測變量是否為”null”,同時(shí)變量的類型也必須是”null”
說明:當(dāng)變量被賦值為”null”時(shí),同時(shí)變量的類型也是”null”時(shí),檢測結(jié)果為true
注意1:在判斷為”null”上,全等于和is_null的作用相同
注意2:變量未初始化時(shí),程序?qū)?huì)報(bào)錯(cuò)
總結(jié):
PHP中,”NULL” 和 “空” 是2個(gè)概念。
isset 主要用來判斷變量是否被初始化過
empty 可以將值為 “假”、”空”、”0″、”NULL”、”未初始化” 的變量都判斷為TRUE
is_null 僅把值為 “NULL” 的變量判斷為TRUE
var == null 把值為 “假”、”空”、”0″、”NULL” 的變量都判斷為TRUE
var === null 僅把值為 “NULL” 的變量判斷為TRUE
注意:在判斷一個(gè)變量是否真正為”NULL”時(shí),大多使用 is_null,從而避免”false”、”0″等值的干擾。
以上所述是小編給大家介紹的PHP判斷數(shù)組是否為空的常用方法(五種方法),希望對(duì)大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- php判斷數(shù)組元素中是否存在某個(gè)字符串的方法
- php判斷數(shù)組中是否存在指定鍵(key)的方法
- php下判斷數(shù)組中是否存在相同的值array_unique
- php中判斷數(shù)組是一維,二維,還是多維的解決方法
- php中判斷數(shù)組相等的方法以及數(shù)組運(yùn)算符介紹
- 判斷php數(shù)組是否為索引數(shù)組的實(shí)現(xiàn)方法
- php中經(jīng)典方法實(shí)現(xiàn)判斷多維數(shù)組是否為空
- 如何判斷php數(shù)組的維度
- PHP實(shí)現(xiàn)判斷數(shù)組是一維、二維或幾維的方法
- php常用數(shù)組array函數(shù)實(shí)例總結(jié)【賦值,拆分,合并,計(jì)算,添加,刪除,查詢,判斷,排序】
- PHP判斷一個(gè)數(shù)組是另一個(gè)數(shù)組子集的方法詳解
相關(guān)文章
Zend Framework開發(fā)入門經(jīng)典教程
這篇文章主要介紹了Zend Framework開發(fā)入門知識(shí)點(diǎn),詳細(xì)介紹了Zend Framework開發(fā)的zend源碼下載,環(huán)境配置,基本組件使用與相關(guān)注意事項(xiàng)等,需要的朋友可以參考下2016-03-03PHP+AjaxForm異步帶進(jìn)度條上傳文件實(shí)例代碼
在使用ajaxForm方法之前,首先需要安裝form.js的插件,網(wǎng)上可以找到,下面通過本文重點(diǎn)給大家介紹PHP+AjaxForm異步帶進(jìn)度條上傳文件實(shí)例代碼,感興趣的朋友一起看看吧2017-08-08使用ob系列函數(shù)實(shí)現(xiàn)PHP網(wǎng)站頁面靜態(tài)化
php頁面緩存主要用到的是ob系列函數(shù),如ob_start(),ob_end_flush(),ob_get_contents() ,今天我們來談?wù)勈褂眠@些函數(shù)來實(shí)現(xiàn)php網(wǎng)站頁面靜態(tài)化2014-08-08PHP+FFMPEG實(shí)現(xiàn)將視頻自動(dòng)轉(zhuǎn)碼成H264標(biāo)準(zhǔn)Mp4文件
最近做一個(gè)在線教學(xué)網(wǎng)的項(xiàng)目,需要實(shí)現(xiàn)上傳任意格式視頻自動(dòng)為h264標(biāo)準(zhǔn)視頻,使用html5播放。最終使用PHP+FFMPEG實(shí)現(xiàn),在此將詳細(xì)解決方案分享給大家!2014-09-09php設(shè)計(jì)模式之適配器模式實(shí)例分析【星際爭霸游戲案例】
這篇文章主要介紹了php設(shè)計(jì)模式之適配器模式,結(jié)合星際爭霸游戲案例形式分析了PHP適配器模式相關(guān)原理、用法及操作注意事項(xiàng),需要的朋友可以參考下2020-04-04PHP筆記之:基于面向?qū)ο笤O(shè)計(jì)的詳解
本篇文章對(duì)面向?qū)ο笤O(shè)計(jì)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05PHP+ajaxfileupload+jcrop插件完美實(shí)現(xiàn)頭像上傳剪裁
在做項(xiàng)目的時(shí)候,經(jīng)常需要一些會(huì)員系統(tǒng)相關(guān)的內(nèi)容,比如頭像的上傳與裁剪等等,下面將這塊內(nèi)容分享給大家2014-06-06PHP數(shù)字和字符串ID互轉(zhuǎn)函數(shù)(類似優(yōu)酷ID)
這篇文章主要介紹了PHP數(shù)字和字符串ID互轉(zhuǎn)函數(shù),生成的字符串ID類似優(yōu)酷的視頻ID,像一個(gè)加密過的數(shù)字ID,本文函數(shù)可以在數(shù)字ID和字符串ID間相互轉(zhuǎn)換,需要的朋友可以參考下2014-06-06