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 相关文章推荐
实现了一个PHP5的getter/setter基类的代码
Feb 25 PHP
php中用socket模拟http中post或者get提交数据的示例代码
Aug 08 PHP
php递归获取目录内文件(包含子目录)封装类分享
Dec 25 PHP
Laravel框架学习笔记(二)项目实战之模型(Models)
Oct 15 PHP
PHP内存缓存Memcached类实例
Dec 08 PHP
php检查日期函数checkdate用法实例
Mar 19 PHP
PHP加密解密实例分析
Dec 25 PHP
php 伪造HTTP_REFERER页面URL来源的三种方法
Sep 22 PHP
PHP批量删除jQuery操作
Jul 23 PHP
使用XHProf查找PHP性能瓶颈的实例
Dec 13 PHP
ThinkPHP5 验证器的具体使用
May 31 PHP
php 命名空间(namespace)原理与用法实例小结
Nov 13 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
Linux下PHP加速器APC的安装与配置笔记
2014/10/24 PHP
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
PHP输出九九乘法表代码实例
2015/03/27 PHP
PHP序列化操作方法分析
2016/09/28 PHP
PHP生成短网址的思路以及实现方法的详解
2019/03/25 PHP
PHP下用Swoole实现Actor并发模型的方法
2019/06/12 PHP
Javascript &amp; DHTML 实例编程(教程)基础知识
2007/06/02 Javascript
jquery 多级下拉菜单核心代码
2010/05/21 Javascript
js 关键词高亮(根据ID/tag高亮关键字)案例介绍
2013/01/21 Javascript
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
jQuery.position()方法获取不到值的安全替换方法
2015/03/13 Javascript
javascript实现连续赋值
2015/08/10 Javascript
JS模拟实现方法重载示例
2016/08/03 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
js输入框使用正则表达式校验输入内容的实例
2017/02/12 Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
2017/04/01 jQuery
vue加载完成后的回调函数方法
2018/09/07 Javascript
vue.js 实现点击按钮动态添加li的方法
2018/09/07 Javascript
通过实例了解js函数中参数的传递
2019/06/15 Javascript
js实现简易计算器功能
2019/10/18 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
2020/10/09 Javascript
python使用递归解决全排列数字示例
2014/02/11 Python
Python读取键盘输入的2种方法
2015/06/16 Python
Python 绘图库 Matplotlib 入门教程
2018/04/19 Python
用python处理MS Word的实例讲解
2018/05/08 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
2018/06/09 Python
Python实现的简单计算器功能详解
2018/08/25 Python
使用Pandas的Series方法绘制图像教程
2019/12/04 Python
Python3使用腾讯云文字识别(腾讯OCR)提取图片中的文字内容实例详解
2020/02/18 Python
Python轻量级web框架bottle使用方法解析
2020/06/13 Python
python中把元组转换为namedtuple方法
2020/12/09 Python
Room Mate Hotels美国:西班牙酒店品牌
2018/04/10 全球购物
局部内部类是否可以访问非final变量?
2013/04/20 面试题
五四青年节优秀演讲稿范文
2014/05/28 职场文书
用python画城市轮播地图
2021/05/28 Python
Python实现日志实时监测的示例详解
2022/04/06 Python