PHP判断数组是否为空的常用方法(五种方法)


Posted in PHP onFebruary 08, 2017

本文介绍了PHP开发中遇到的数组问题,这里介绍了判断PHP数组为空的5种方法,有需要的朋友可以借鉴参考一下。

1. isset功能:判断变量是否被初始化

说明:它并不会判断变量是否为空,并且可以用来判断数组中元素是否被定义过

注意:当使用isset来判断数组元素是否被初始化过时,它的效率比array_key_exists高4倍左右

<?php
$a = '';
$a['c'] = '';
if (!isset($a)) echo '$a 未被初始化' . "";
if (!isset($b)) echo '$b 未被初始化' . "";
if (isset($a['c'])) echo '$a 已经被初始化' . "";
// 显示结果为
// $b 未被初始化
// $a 已经被初始化

2. empty功能:检测变量是否为”空”

说明:任何一个未初始化的变量、值为 0 或 false 或 空字符串”” 或 null的变量、空数组、没有任何属性的对象,都将判断为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的变量、空数组、都将判断为 null

注意:与empty的显著不同就是:变量未初始化时 var == null 将会报错。

<?php
$a = 0;
$b = array();
if ($a == null) echo '$a 为空' . "";
if ($b == null) echo '$b 为空' . "";
if ($c == null) echo '$b 为空' . "";
// 显示结果为
// $a 为空
// $b 为空
// Undefined variable: c

4. is_null功能:检测变量是否为”null”

说明:当变量被赋值为”null”时,检测结果为true

注意1:null不区分大小写:$a = null; $a = NULL 没有任何区别

注意2:仅在变量的值为”null”时,检测结果才为true,0、空字符串、false、空数组都检测为false

注意3:变量未初始化时,程序将会报错

<?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' . "";
// 显示结果为
// $a 为NULL
// Undefined variable: c

5. var === null功能:检测变量是否为”null”,同时变量的类型也必须是”null”

说明:当变量被赋值为”null”时,同时变量的类型也是”null”时,检测结果为true

注意1:在判断为”null”上,全等于和is_null的作用相同

注意2:变量未初始化时,程序将会报错

总结:

PHP中,”NULL” 和 “空” 是2个概念。

isset 主要用来判断变量是否被初始化过

empty 可以将值为 “假”、”空”、”0″、”NULL”、”未初始化” 的变量都判断为TRUE

is_null 仅把值为 “NULL” 的变量判断为TRUE

var == null 把值为 “假”、”空”、”0″、”NULL” 的变量都判断为TRUE

var === null 仅把值为 “NULL” 的变量判断为TRUE

注意:在判断一个变量是否真正为”NULL”时,大多使用 is_null,从而避免”false”、”0″等值的干扰。

以上所述是小编给大家介绍的PHP判断数组是否为空的常用方法(五种方法),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
谈谈PHP语法(4)
Oct 09 PHP
《PHP边学边教》(01.开篇――准备工作)
Dec 13 PHP
完美解决dedecms中的[html][/html]和[code][/code]问题
Mar 20 PHP
PHP 中的批处理的实现
Jun 14 PHP
php学习之 认清变量的作用范围
Jan 26 PHP
PHPer 需要了解的 5 个 Composer 小技巧
Aug 18 PHP
ThinkPHP后台首页index使用frameset时的注意事项分析
Aug 22 PHP
PHP设置images目录不充许http访问的方法
Nov 01 PHP
php表单文件iframe异步上传实例讲解
Jul 26 PHP
CI框架(CodeIgniter)操作redis的方法详解
Jan 25 PHP
总结PHP代码规范、流程规范、git规范
Jun 18 PHP
PHP+Redis链表解决高并发下商品超卖问题(实现原理及步骤)
Aug 03 PHP
PHP基于DOM创建xml文档的方法示例
Feb 08 #PHP
PHP输出XML格式数据的方法总结
Feb 08 #PHP
PHP中大括号'{}'用法实例总结
Feb 08 #PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 #PHP
php实现连接access数据库并转txt写入的方法
Feb 08 #PHP
php unicode编码和字符串互转的方法
Aug 12 #PHP
用PHP将Unicode 转化为UTF-8的实现方法(推荐)
Feb 08 #PHP
You might like
解析PHP中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
PHP中$this和$that指针使用实例
2015/01/06 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
XML的代替者----JSON
2007/07/21 Javascript
jquery中ajax学习笔记3
2011/10/16 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
2013/05/30 Javascript
javascript中数组(Array)对象和字符串(String)对象的常用方法总结
2016/12/15 Javascript
微信小程序 选项卡的简单实例
2017/05/24 Javascript
JavaScript模拟实现自由落体效果
2018/08/28 Javascript
Vue Echarts实现可视化世界地图代码实例
2019/05/07 Javascript
javascript中undefined的本质解析
2019/07/31 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
JS JQuery获取data-*属性值方法解析
2020/09/01 jQuery
[46:14]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第一场 12.11
2020/12/16 DOTA
python使用beautifulsoup从爱奇艺网抓取视频播放
2014/01/23 Python
Python连接mssql数据库编码问题解决方法
2015/01/01 Python
浅析Python中的多进程与多线程的使用
2015/04/07 Python
Python中shutil模块的学习笔记教程
2017/04/04 Python
TensorFlow损失函数专题详解
2018/04/26 Python
python 根据时间来生成唯一的字符串方法
2019/01/14 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
2019/02/22 Python
python实现邮件发送功能
2019/08/10 Python
django 扩展user用户字段inlines方式
2020/03/30 Python
Python实现手绘图效果实例分享
2020/07/22 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
玩具反斗城天猫官方旗舰店:享誉全球的玩具店
2017/10/10 全球购物
英国手工布艺沙发在线购买:Sofas & Stuff
2018/03/02 全球购物
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
篮球赛口号
2014/06/18 职场文书
公司授权委托书格式范文
2014/10/02 职场文书
80后婚前协议书范本
2014/10/24 职场文书
招商银行收入证明
2015/06/17 职场文书
如何才能写好调研报告?
2019/07/03 职场文书
Redis调用Lua脚本及使用场景快速掌握
2022/03/16 Redis