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 相关文章推荐
php下使用以下代码连接并测试
Apr 09 PHP
php Sql Server连接失败问题及解决办法
Aug 07 PHP
PHP url 加密解密函数代码
Aug 26 PHP
具有时效性的php加密解密函数代码
Jun 19 PHP
浅析SVN常见问题及解决方法
Jun 21 PHP
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
Jun 30 PHP
PHP使用CURL_MULTI实现多线程采集的例子
Jul 29 PHP
php实现的统计字数函数定义与使用示例
Jul 26 PHP
浅谈关于PHP解决图片无损压缩的问题
Sep 01 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
Dec 21 PHP
PHP实现正则表达式分组捕获操作示例
Feb 03 PHP
tp5 实现列表数据根据状态排序
Oct 18 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
PHP - Html Transfer Code
2006/10/09 PHP
php基础知识:类与对象(3) 构造函数和析构函数
2006/12/13 PHP
PHP 基本语法格式
2009/12/15 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
2010/08/01 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
2016/06/19 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
日期处理的js库(迷你版)--自建js库总结
2011/11/21 Javascript
javascript实现uploadify上传格式以及个数限制
2015/11/23 Javascript
AngularJS转换响应内容
2016/01/27 Javascript
JS出现失效的情况总结
2017/01/20 Javascript
JQuery validate 验证一个单独的表单元素实例
2017/02/17 Javascript
js学使用setTimeout实现轮循动画
2017/07/17 Javascript
webpack 2的react开发配置实例代码
2017/07/28 Javascript
Vue.js 中的 v-model 指令及绑定表单元素的方法
2018/12/03 Javascript
VUE接入腾讯验证码功能(滑块验证)备忘
2019/05/07 Javascript
JavaScript使用表单元素验证表单的示例代码
2019/08/20 Javascript
JavaScript实现移动端拖动元素
2020/11/24 Javascript
vue3中轻松实现switch功能组件的全过程
2021/01/07 Vue.js
[42:32]Secret vs Optic 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python 元组(Tuple)操作详解
2014/03/11 Python
用Python+OpenCV对比图像质量的几种方法
2019/07/15 Python
10分钟用python搭建一个超好用的CMDB系统
2019/07/17 Python
python 装饰器功能与用法案例详解
2020/03/06 Python
Python 通过正则表达式快速获取电影的下载地址
2020/08/17 Python
Mavi牛仔裤美国官网:土耳其著名牛仔品牌
2016/09/24 全球购物
《雾凇》教学反思
2014/02/17 职场文书
租房合同协议书
2014/04/09 职场文书
大一新生学期自我评价
2014/04/09 职场文书
模具设计与制造专业求职信
2014/07/19 职场文书
小学生放飞梦想演讲稿
2014/08/26 职场文书
夫妻分居协议书范本
2014/11/28 职场文书
中学总务处工作总结
2015/08/12 职场文书
初中生物教学反思
2016/02/20 职场文书
面试提问mysql一张表到底能存多少数据
2022/03/13 MySQL