PHP中isset()和unset()函数的用法小结


Posted in PHP onMarch 11, 2014

isset
(PHP 3, PHP 4, PHP 5 )

isset -- 检测变量是否设置

描述
bool isset ( mixed var [, mixed var [, ...]])
如果 var 存在则返回 TRUE,否则返回 FALSE。

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

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

<?php
$var = '';
// 结果为 TRUE,所以后边的文本将被打印出来。
if (isset($var)) {
     print "This var is set set so I will print.";
}
// 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。
$a = "test";
$b = "anothertest";
var_dump( isset($a) );      // TRUE
var_dump( isset ($a, $b) ); // TRUE
unset ($a);
var_dump( isset ($a) );     // FALSE
var_dump( isset ($a, $b) ); // FALSE
$foo = NULL;
var_dump( isset ($foo) );   // FALSE
?>

这对于数组中的元素也同样有效:
<?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函数isset()可以帮助我们是检测变量是否设置。若果变量不存在则返回 FALSE,而如果变量存在且值不为NULL,则返回 TURE。

通过对PHP语言的学习,应该知道它是基于函数的一款HTML脚本语言。庞大的函数库支持着PHP语言功能的实现。下面我们为大家介绍有关PHP函数isset()的相关用法。

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

功能:检测变量是否设置

返回值:

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

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

版本:PHP 3, PHP 4, PHP 5

更多说明:

使用 unset() 释放变量之后,它将不再是 isset()。
PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。
检测常量是否已设置可使用 defined() 函数。

unset()

销毁指定的变量。注意在 PHP 3 中,unset() 将返回 TRUE(实际上是整型值 1),而在 PHP 4 中,unset() 不再是一个真正的函数:它现在是一个语句。这样就没有了返回值,试图获取 unset() 的返回值将导致解析错误。

PHP 相关文章推荐
PHP 高手之路(三)
Oct 09 PHP
php empty,isset,is_null判断比较(差异与异同)
Oct 19 PHP
php缓冲 output_buffering的使用详解
Jun 13 PHP
CURL状态码列表(详细)
Jun 27 PHP
ThinkPHP单字母函数(快捷方法)使用总结
Jul 23 PHP
实现PHP框架系列文章(6)mysql数据库方法
Mar 04 PHP
CI框架中$this-&gt;load-&gt;library()用法分析
May 18 PHP
thinkPHP显示不出验证码的原因与解决方法分析
May 20 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
PHP读取CSV大文件导入数据库的实例
Jul 24 PHP
PHP实现从上往下打印二叉树的方法
Jan 18 PHP
PHP7创建销毁session的实例方法
Feb 03 PHP
PHP调用JAVA的WebService简单实例
Mar 11 #PHP
php的webservice的wsdl的XML无法显示问题的解决方法
Mar 11 #PHP
Yii操作数据库的3种方法
Mar 11 #PHP
php导出excel格式数据问题
Mar 11 #PHP
PHP中对于浮点型的数据需要用不同的方法解决
Mar 11 #PHP
php设置允许大文件上传示例代码
Mar 10 #PHP
php如何解决无法上传大于8M的文件问题
Mar 10 #PHP
You might like
php redis实现文章发布系统(用户投票系统)
2017/03/04 PHP
PHP基于进程控制函数实现多线程
2020/12/09 PHP
URI、URL和URN之间的区别与联系
2006/12/20 Javascript
encode脚本和normal脚本混用的问题与解决方法
2007/03/08 Javascript
用CSS+JS实现的进度条效果效果
2007/06/05 Javascript
javascript 密码强度验证规则、打分、验证(给出前端代码,后端代码可根据强度规则翻译)
2010/05/18 Javascript
Javascript 实现的数独解题算法网页实例
2013/10/15 Javascript
jquery实现图片翻页效果
2013/12/23 Javascript
node.js中RPC(远程过程调用)的实现原理介绍
2014/12/05 Javascript
jQuery实现的多级下拉菜单效果代码
2015/08/24 Javascript
Nodejs Express4.x开发框架随手笔记
2015/11/23 NodeJs
JS随机洗牌算法之数组随机排序
2016/03/23 Javascript
webpack中引用jquery的简单实现
2016/06/08 Javascript
EasyUI折叠表格层次显示detailview详解及实例
2016/12/28 Javascript
JavaScript原型继承_动力节点Java学院整理
2017/06/30 Javascript
vue2.0设置proxyTable使用axios进行跨域请求的方法
2017/10/19 Javascript
Angularjs渲染的 using 指令的星级评分系统示例
2017/11/09 Javascript
VUE实现密码验证与提示功能
2019/10/18 Javascript
jQuery实现可编辑的表格
2019/12/11 jQuery
javascript canvas封装动态时钟
2020/09/30 Javascript
Vue+axios封装请求实现前后端分离
2020/10/23 Javascript
vue中利用three.js实现全景图的完整示例
2020/12/07 Vue.js
[01:11]steam端dota2实名认证操作流程视频
2021/03/11 DOTA
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
python实现聊天小程序
2018/03/13 Python
Python Series从0开始索引的方法
2018/11/06 Python
Python配置虚拟环境图文步骤
2019/05/20 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
英国最大的宠物商店:Pets at Home
2019/04/17 全球购物
日本语毕业生自荐信
2014/02/01 职场文书
养成教育经验材料
2014/05/26 职场文书
2014国庆节标语口号
2014/09/19 职场文书
中学生清明节演讲稿
2015/03/18 职场文书
2015年综治宣传月活动总结
2015/03/25 职场文书
酒店前台接待岗位职责
2015/04/02 职场文书