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类
Jul 15 PHP
NO3第三帝国留言簿制作过程
Oct 09 PHP
php 之 没有mysql支持时的替代方案
Oct 09 PHP
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
Mar 06 PHP
PHP+MYSQL会员系统的登陆即权限判断实现代码
Sep 23 PHP
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
Oct 08 PHP
解析php中heredoc的使用方法
Jun 17 PHP
PHP中使用smarty生成静态文件的例子
Apr 24 PHP
php json_encode()函数返回json数据实例代码
Oct 10 PHP
php简单随机字符串生成方法示例
Apr 19 PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 PHP
PHP面试题 wakeup魔法 Ezpop pop序列化与反序列化
Apr 11 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导出oracle库的php代码
2009/04/20 PHP
简单的PHP留言本实例代码
2010/05/09 PHP
php在页面中调用fckeditor编辑器的方法
2011/06/10 PHP
针对多用户实现头像上传功能PHP代码 适用于登陆页面制作
2016/08/17 PHP
window.open被浏览器拦截后的自定义提示效果代码
2007/11/19 Javascript
javascript面向对象的方式实现的弹出层效果代码
2010/01/28 Javascript
jQuery选择没有colspan属性的td的代码
2010/07/06 Javascript
使用ExtJS技术实现的拖动树结点
2010/08/05 Javascript
jQuery代码优化之基本事件
2011/11/01 Javascript
JQuery 操作/获取table具体代码
2013/06/13 Javascript
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
Javascript 实现图片无缝滚动
2014/12/19 Javascript
jQuery实现的产品自动360度旋转展示特效源码分享
2015/08/21 Javascript
js创建对象的方法汇总
2016/01/07 Javascript
基于jquery实现智能提示控件intellSeach.js
2016/03/17 Javascript
jQuery学习之DOM节点的插入方法总结
2017/01/22 Javascript
Vue.js 2.0 移动端拍照压缩图片预览及上传实例
2017/04/27 Javascript
javascript闭包的使用之按钮切换功能
2018/08/30 Javascript
Nuxt.js SSR与权限验证的实现
2018/11/21 Javascript
python3简单实现微信爬虫
2015/04/09 Python
Python中用altzone()方法处理时区的教程
2015/05/22 Python
python实现学生管理系统
2018/01/11 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
2019/02/20 Python
原来我一直安装 Python 库的姿势都不对呀
2019/11/11 Python
python“静态”变量、实例变量与本地变量的声明示例
2020/11/13 Python
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
2019/01/23 HTML / CSS
台湾母婴用品限时团购:妈咪爱
2018/08/03 全球购物
全球独特生活方式产品和礼品购物网站:AHAlife
2018/09/18 全球购物
Nike德国官网:Nike.com (DE)
2018/11/13 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
给女儿的表扬信
2014/01/18 职场文书
青年文明号口号
2014/06/17 职场文书
质量月口号
2014/06/20 职场文书
2015年百日安全活动总结
2015/03/26 职场文书
检察院起诉书
2015/05/20 职场文书
小兵张嘎观后感
2015/06/03 职场文书