PHP中isset、empty的用法与区别示例详解


Posted in PHP onNovember 05, 2020

前言

在编写程序调用变量时,遇到未定义的变量时,会报错,这是就需要我们对变量先进行判断,再进行相关操作。

这里主要记录两个变量判断函数的使用:isset()与empty()

1、isset — 检测变量是否已设置并且非 NULL

isset ( mixed $var [, mixed $... ] ) : bool

如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。

若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。

同时要注意的是 null 字符("\0")并不等同于 PHP 的 NULL 常量。

注:如果一次传入多个参数,那么 isset() 只有在全部参数都以被设置时返回 TRUE 计算过程从左至右,中途遇到没有设置的变量时就会立即停止。

2、empty — 检查一个变量是否为空

empty ( mixed $var ) : bool

当一个变量并不存在,或者它的值等同于FALSE,那么它会被认为不存在。

如果变量不存在的话,empty()并不会产生警告。

使用 empty 判断以下变量时,会被认为是空的:

"" (空字符串)
0 (作为整数的0)
0.0 (作为浮点数的0)
"0" (作为字符串的0)
NULL
FALSE
array() (一个空数组)

关于 isset() 与 empty() 的判断变量的区别:

1、判断方式不同

isset() 判断变量是否声明并且不是 NULL
empty() 一个变量是否为空

2、判断特殊变量是否存在时的区别

<?php
$a = ""; // 空字符串
var_dump(isset($a)); // true
var_dump(!empty($a)); // false
echo '<br/>';

$b = 0; // 作为整数的0
var_dump(isset($b)); // true
var_dump(!empty($b)); // false
echo '<br/>';

$c = 0.0; // 作为浮点数的0
var_dump(isset($c)); // true
var_dump(!empty($c)); // false
echo '<br/>';

$d = "0"; // 作为字符串的0
var_dump(isset($d)); // true
var_dump(!empty($d)); // false
echo '<br/>';

$e = NULL;
var_dump(isset($e)); // false
var_dump(!empty($e)); // false
echo '<br/>';

$f = FALSE;
var_dump(isset($f)); // true
var_dump(!empty($f)); // false
echo '<br/>';

$g = array(); // 一个空数组
var_dump(isset($g)); // true
var_dump(!empty($g)); // false
echo '<br/>';

总结

到此这篇关于PHP中isset、empty用法与区别的文章就介绍到这了,更多相关PHP isset、empty的用法与区别内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
PHP设计聊天室步步通
Oct 09 PHP
php 代码优化之经典示例
Mar 24 PHP
php设计模式 Decorator(装饰模式)
Jun 26 PHP
PHP页面间参数传递的四种方法详解
Jun 09 PHP
php生成zip压缩文件的方法详解
Jun 09 PHP
php判断电脑访问、手机访问的例子
May 10 PHP
php通过修改header强制图片下载的方法
Mar 24 PHP
php实现的mongodb操作类实例
Apr 03 PHP
PHP实现根据银行卡号判断银行
Apr 29 PHP
php实现word转html的方法
Jan 22 PHP
PHP几个实用自定义函数小结
Jan 25 PHP
php基于单例模式封装mysql类完整实例
Oct 18 PHP
PHP后门隐藏的一些技巧总结
Nov 04 #PHP
phpstudy2020搭建站点的实现示例
Oct 30 #PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
Oct 30 #PHP
PhpStorm 2020.3:新增开箱即用的PHP 8属性(推荐)
Oct 30 #PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
Oct 30 #PHP
PHP fopen中文文件名乱码问题解决方案
Oct 28 #PHP
PHP dirname功能及原理实例解析
Oct 28 #PHP
You might like
图书管理程序(一)
2006/10/09 PHP
微信公众平台开发实现2048游戏的方法
2015/04/15 PHP
php实现网站文件批量压缩下载功能
2015/10/28 PHP
CodeIgniter记录错误日志的方法全面总结
2016/05/17 PHP
PHP实现随机发放扑克牌
2020/04/21 PHP
PHP数组访问常用方法解析
2020/09/05 PHP
javascript之更有效率的字符串替换
2008/08/02 Javascript
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
JS关键字变色实现思路及代码
2013/02/21 Javascript
js获取多个tagname的节点数组
2013/09/22 Javascript
js简单实现删除记录时的提示效果
2013/12/05 Javascript
从QQ网站中提取的纯JS省市区三级联动菜单
2013/12/25 Javascript
jQuery动态创建html元素的常用方法汇总
2014/09/05 Javascript
js实例属性和原型属性示例详解
2014/11/23 Javascript
jQuery EasyUI实现右键菜单变灰不可用效果
2015/09/24 Javascript
jQuery Mobile 触摸事件实例
2016/06/04 Javascript
JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
2016/10/10 Javascript
Node.js环境下Koa2添加travis ci持续集成工具的方法
2017/06/19 Javascript
解决vue select当前value没有更新到vue对象属性的问题
2018/08/30 Javascript
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
el-input 标签中密码的显示和隐藏功能的实例代码
2019/07/19 Javascript
python中子类继承父类的__init__方法实例
2016/12/15 Python
python的常见矩阵运算(小结)
2019/08/07 Python
pytorch 自定义数据集加载方法
2019/08/18 Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
2019/09/05 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
python collections模块的使用
2020/10/16 Python
Stella McCartney官网:成衣、包袋、香水、内衣、童装及Adidas系列
2018/12/20 全球购物
医药代表个人的求职信分享
2013/12/08 职场文书
电子商务网站的创业计划书
2014/01/05 职场文书
安全生产检查通报
2014/01/29 职场文书
推荐信格式范文
2014/05/09 职场文书
幸福中国演讲稿
2014/09/12 职场文书
2014年电话销售工作总结
2014/12/01 职场文书
企业安全隐患排查治理制度
2015/08/05 职场文书
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
2021/03/31 jQuery