PHP isset()及empty()用法区别详解


Posted in PHP onAugust 29, 2020

PHP isset函数作用

isset函数是检测变量是否设置。

格式:bool isset( mixed var [, mixed var [, ...]] )

返回值:

若变量不存在则返回FALSE

若变量存在且其值为NULL,也返回FALSE

若变量存在且值不为NULL,则返回TURE

同时检查多个变量时,每个单项都符号上一条要求时才返回TRUE,否则结果为FALSE

如果已经使用unset()释放了一个变量之后,它将不再是isset()。若使用isset()测试一个被设置成NULL的变量,将返回FALSE。同时要注意的是一个NULL字节("\0")并不等同于PHP的NULL常数。

警告:isset()只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用defined()函数。

<?php

$a = array ('test' => 1, 'hello' => NULL);

var_dump( isset ($a['test') ); // TRUE
var_dump( isset ($a['foo') ); // FALSE
var_dump( isset ($a['hello') ); // FALSE

// 'hello' 等于 NULL,所以被认为是未赋值的。
// 如果想检测 NULL 键值,可以试试下边的方法。
var_dump( array_key_exists('hello', $a) ); // TRUE

?>

PHP的empty()函数

格式:bool empty(mixed var)

功能:检查一个变量是否为空

返回值:

若变量不存在则返回TRUE

若变量存在且值为""、0、"0"、NULL、、FALSE、array()、var $var;以及没有任何属性的对象,则返回TURE

若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var;以及没有任何属性的对象,则返回FALSE

empty()只能用于变量,传递任何其它参数都将造成Paser error而终止运行

检测常量是否已设置可使用defined()函数。

empty() 与 isset() 的一个简单比较

<?php 
$var = 0; 
// 结果为 true,因为 $var 为空 
if (empty($var)) { 
echo '$var is either 0 or not set at all'; 
} 
// 结果为 false,因为 $var 已设置 
if (!isset($var)) { 
echo '$var is not set at all'; 
} 
?>

当要判断一个变量是否已经声明的时候可以使用isset函数

当要判断一个变量是否已经赋予数据且不为空,可以用empty函数

当要判断一个变量存在且不为空,先isset函数,再用empty函数

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Oracle Faq(Oracle的版本)
Oct 09 PHP
php echo 输出字符串函数详解
May 13 PHP
PHP三层结构(上) 简单三层结构
Jul 04 PHP
深入php self与$this的详解
Jun 08 PHP
php中url传递中文字符,特殊危险字符的解决方法
Aug 17 PHP
php使用exec shell命令注入的方法讲解
Nov 12 PHP
使用Thinkphp框架开发移动端接口
Aug 05 PHP
php实现按天数、星期、月份查询的搜索框
May 02 PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 PHP
PHP获取当前日期及本周一是几月几号的方法
Mar 28 PHP
php写app用的框架整理
Sep 29 PHP
PHP设计模式(观察者模式)
Jul 07 PHP
PHP实现简单日历类编写
Aug 28 #PHP
PHP实现文件上传与下载
Aug 28 #PHP
PHP实现计算器小功能
Aug 28 #PHP
PHP实现简易图形计算器
Aug 28 #PHP
PHP实现简单的计算器
Aug 28 #PHP
php实现简易计算器
Aug 28 #PHP
有关PHP 中 config.m4 的探索
Aug 26 #PHP
You might like
yii2.0之GridView自定义按钮和链接用法
2014/12/15 PHP
php官方微信接口大全(微信支付、微信红包、微信摇一摇、微信小店)
2015/12/21 PHP
java微信开发之上传下载多媒体文件
2016/06/24 PHP
php cookie 详解使用实例
2016/11/03 PHP
thinkphp关于简单的权限判定方法
2017/04/03 PHP
YII框架关联查询操作示例
2019/04/29 PHP
javascript实现复制与粘贴操作实例
2014/10/16 Javascript
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
jQuery实现表格元素动态创建功能
2017/01/09 Javascript
jQuery源码分析之init的详细介绍
2017/02/13 Javascript
实例详解JavaScript中setTimeout函数的执行顺序
2017/07/12 Javascript
AngularJS实现的简单拖拽功能示例
2018/01/02 Javascript
zepto.js 实时监听输入框的方法
2018/12/04 Javascript
使用Promise封装小程序wx.request的实现方法
2019/11/13 Javascript
uni-app如何页面传参数的几种方法总结
2020/04/28 Javascript
理解Python中函数的参数
2015/04/27 Python
Python基于贪心算法解决背包问题示例
2017/11/27 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
2018/02/18 Python
Python3.5 处理文本txt,删除不需要的行方法
2018/12/10 Python
python flask中动态URL规则详解
2019/11/22 Python
django框架auth模块用法实例详解
2019/12/10 Python
Python + Requests + Unittest接口自动化测试实例分析
2019/12/12 Python
PyTorch中反卷积的用法详解
2019/12/30 Python
Python ORM编程基础示例
2020/02/02 Python
python实现一个猜拳游戏
2020/04/05 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
python判断all函数输出结果是否为true的方法
2020/12/03 Python
CSS3 media queries + jQuery实现响应式导航
2016/09/30 HTML / CSS
int和Integer有什么区别
2013/05/25 面试题
品管员岗位职责
2013/11/10 职场文书
高一地理教学反思
2014/01/18 职场文书
党的群众路线对照检查材料思想汇报(学校)
2014/10/04 职场文书
个人批评与自我批评材料
2014/10/17 职场文书
2015年七一建党节活动方案
2015/05/05 职场文书
欧也妮葛朗台读书笔记
2015/06/30 职场文书
会计做账心得体会
2016/01/22 职场文书