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 各种排序算法实现代码
Aug 20 PHP
file_get_contents(&quot;php://input&quot;, &quot;r&quot;)实例介绍
Jul 01 PHP
php addslashes 利用递归实现使用反斜线引用字符串
Aug 05 PHP
浅谈PHP变量作用域以及地址引用问题
Dec 27 PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
Jan 19 PHP
windows下配置php5.5开发环境及开发扩展
Dec 25 PHP
详解php魔术方法(Magic methods)的使用方法
Feb 14 PHP
php从数据库中读取特定的行(实例)
Jun 02 PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
Oct 14 PHP
浅谈PHP SHA1withRSA加密生成签名及验签
Mar 18 PHP
PHP pthreads v3下同步处理synchronized用法示例
Feb 21 PHP
php变量与字符串的增删改查操作示例
May 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
用PHP生成自己的LOG文件
2006/10/09 PHP
php 编写安全的代码时容易犯的错误小结
2010/05/20 PHP
php求两个目录的相对路径示例(php获取相对路径)
2014/03/27 PHP
PHP按行读取、处理较大CSV文件的代码实例
2014/04/09 PHP
thinkphp3.x中display方法及show方法的用法实例
2016/05/19 PHP
利用php_imagick实现复古效果的方法
2016/10/18 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
2017/02/10 PHP
用js生产批量批处理执行命令
2008/07/28 Javascript
DWR Ext 加载数据
2009/03/22 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
javascript多行字符串的简单实现方式
2015/05/04 Javascript
NodeJs中的VM模块详解
2015/05/06 NodeJs
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
jQuery中hover与mouseover和mouseout的区别分析
2015/12/24 Javascript
JS中使用变量保存arguments对象的方法
2016/06/03 Javascript
JS匹配日期和时间的正则表达式示例
2017/05/12 Javascript
vue滚动插件better-scroll使用详解
2019/10/18 Javascript
js实现前端界面导航栏下拉列表
2020/08/27 Javascript
js屏蔽F12审查元素,禁止修改页面代码等实现代码
2020/10/02 Javascript
[02:43]DOTA2英雄基础教程 圣堂刺客
2013/12/09 DOTA
讲解Python中的标识运算符
2015/05/14 Python
Python2.7编程中SQLite3基本操作方法示例
2017/08/09 Python
对python周期性定时器的示例详解
2019/02/19 Python
Tensorflow 定义变量,函数,数值计算等名字的更新方式
2020/02/10 Python
python读取当前目录下的CSV文件数据
2020/03/11 Python
Python Flask框架实现简单加法工具过程解析
2020/06/03 Python
python实现发送QQ邮件(可加附件)
2020/12/23 Python
css3 仿写阿里云水纹效果的示例代码
2018/02/10 HTML / CSS
HTML5 Canvas鼠标与键盘事件demo示例
2013/07/04 HTML / CSS
Hotels.com中国区:好订网
2016/08/18 全球购物
Yahoo的PHP面试题
2014/05/26 面试题
低碳环保口号
2014/06/12 职场文书
运动会广播稿200字
2014/10/18 职场文书
导游词之香港-太平山顶
2019/10/18 职场文书
Golang二维数组的使用方式
2021/05/28 Golang
Nginx禁止ip访问或非法域名访问
2022/04/07 Servers