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通过iconv将字符串从GBK转换为UTF8字符集
Jul 18 PHP
PHP5函数小全(分享)
Jun 06 PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
May 15 PHP
JavaScript创建命名空间的5种写法
Jun 24 PHP
php从数据库查询结果生成树形列表的方法
Apr 17 PHP
php微信浏览器分享设置以及回调详解
Aug 01 PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
Sep 11 PHP
PHP高效获取远程图片尺寸和大小的实现方法
Oct 20 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
PHP单例模式应用示例【多次连接数据库只实例化一次】
Dec 18 PHP
PHP面向对象程序设计中的self、static、parent关键字用法分析
Aug 14 PHP
PHP遍历数组的6种方式总结
Nov 17 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
德劲1102收音机的打理维修案例
2021/03/02 无线电
php cli 方式 在crotab中运行解决
2010/02/08 PHP
php下保存远程图片到本地的办法
2010/08/08 PHP
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
CI框架源码阅读,系统常量文件constants.php的配置
2013/02/28 PHP
php登陆页的密码处理方式分享
2013/10/14 PHP
CI框架中集成CKEditor编辑器的教程
2014/06/09 PHP
php实现html标签闭合检测与修复方法
2015/07/09 PHP
php+croppic.js实现剪切上传图片功能
2018/08/14 PHP
Prototype Function对象 学习
2009/07/12 Javascript
jquery动画1.加载指示器
2012/08/24 Javascript
JavaScript严格模式禁用With语句的原因
2014/10/20 Javascript
JQuery CheckBox(复选框)操作方法汇总
2015/04/15 Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
2015/05/12 Javascript
使用jQuery的easydrag插件实现可拖动的DIV弹出框
2016/02/19 Javascript
基于jQuery实现中英文切换导航条效果
2016/09/18 Javascript
js下拉菜单生成器dropMenu使用方法详解
2017/08/01 Javascript
Vue常用的几个指令附完整案例
2018/11/06 Javascript
微信小程序webview实现长按点击识别二维码功能示例
2019/01/24 Javascript
Vue分页器实现原理详解
2019/06/28 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
2020/04/08 Javascript
基于javascript处理nginx请求过程详解
2020/07/07 Javascript
Python使用urllib模块的urlopen超时问题解决方法
2014/11/08 Python
Python接收Gmail新邮件并发送到gtalk的方法
2015/03/10 Python
Python基于jieba库进行简单分词及词云功能实现方法
2018/06/16 Python
python多线程并发让两个LED同时亮的方法
2019/02/18 Python
基于python监控程序是否关闭
2020/01/14 Python
html5 button autofocus 属性介绍及应用
2013/01/04 HTML / CSS
linux面试相关问题
2013/04/28 面试题
一些关于MySql加速和优化的面试题
2014/01/30 面试题
日语专业毕业生自荐信
2013/11/11 职场文书
力学专业毕业生自荐信
2013/11/17 职场文书
高中生职业规划范文
2014/03/09 职场文书
2014年教师党员公开承诺书
2014/05/28 职场文书
党的群众路线教育实践活动制度建设计划方案
2014/10/31 职场文书
导游词之杭州岳王庙
2019/11/13 职场文书