phpempty()与isset()区别的详细介绍
详细 介绍 区别 isset PHPempty
2023-06-13 09:15:01 时间
在使用php编写页面程序时,我经常使用变量处理函数判断php页面尾部参数的某个变量值是否为空,开始的时候我习惯了使用empty()函数,却发现了一些问题,因此改用isset()函数,问题不再。
顾名思义,empty()判断一个变量是否为“空”,isset()判断一个变量是否已经设置。正是这种所谓的“顾名思义”,令我开始时走了些弯路:当一个变量值等于0时,empty()也会成立(True),因而会发生一些意外。原来,empty()和isset()虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的
比如检测$id变量,当$id=0时,用empty()和isset()来检测变量$id是否已经配置,两都将返回不同的值——empty()认为没有配置,isset()能够取得$id的值:
$id=0;
empty($id)?print"It"sempty.":print"It"s$id.";
//结果:It"sempty.
print"<br>";
!isset($id)?print"It"sempty.":print"It"s$id.";
//结果:It"s0.
这意味着,我们在使用变量处理函数时,当该变量可能出现0的值,使用empty()要小心,这个时候用isset取代它更明智一些。
当一个php页面的URL尾部参数出现id=0时(比如:test.php?id=0),试比较:
if(empty($id))$id=1;-若id=0,id也会为1
if(!isset($id))$id=1;-若id=0,id不会为1
可分开运行以下代码检测上述推断:
if(empty($id))$id=1;
print$id;//得到1
if(!isset($id))$id=1;
print$id;//得到0
相关文章
- Cron表达式详细介绍
- vs单步调试及断点调试基本介绍(入门版详细图文介绍)
- React教程(详细版)
- Landsat 9 数据详细介绍
- gt包绘制表格详细介绍!
- 红帽RHEL8与RHEL7的区别详细介绍
- 深入解析HTTP(web开发详细理解原理)【JavaWeb】
- Redis分布式锁详细介绍
- Linux中一对多配置日志服务器的详细步骤
- JSP EL表达式详细介绍详解编程语言
- Oracle 视图 DBA_NETWORK_ACL_PRIVILEGES 官方解释,作用,如何使用详细说明
- Oracle 视图 V$HM_CHECK 官方解释,作用,如何使用详细说明
- 爬虫代理Scrapy框架详细介绍3
- Linux常见服务详细介绍,适合运维工程师!
- 比较详细的XMLDOM对象方法详解
- javascript贪吃蛇(详细注释版)
- PHP漏洞全解(详细介绍)
- Java线程中sleep和wait的区别详细介绍
- C++中delete和delete[]的区别详细介绍
- java与c#的语法区别详细介绍
- php中is_null,empty,isset,unset的区别详细介绍
- Go语言中的复合类型详细介绍
- Go语言命令行操作命令详细介绍
- Thinkphp中import的几个用法详细介绍
- Android中AsyncTask详细介绍