当前位置:首页 > 电脑知识 > 正文内容

墙裂推荐(PHP中empty ,is_null ,isset, if()的区别?)php中empty是什么意思,php中 empty() 和 isset() 的区别,php中 empty() 和 isset() 的区别,

sauo3年前 (2022-09-17)电脑知识121

由于php中的 empty() 和 isset() 函数经常被混用,下面就详细的说说它们之间的区别。

php中 empty() 和 isset() 的区别

(1)、empty() 函数用于检查一个变量是否为空。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。

(2)、isset() 函数用于检测变量是否已设置并且非 NULL。如果已经使用 unset() 释放了一个变量之后,再通过 isset() 判断将返回 FALSE。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。

(3)、对于 0、false、空字符串、空数组的判断上,empty() 可以识别为空,isset() 则不能识别。

empty() 和 isset() 的区别示例:

1、对于未设置的变量进行判断

例:

PHP
if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量未设置或变量为空复制

2、对于 "" (空字符串) 的判断

例:

PHP
$a = ; if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量已设置且不为空复制

3、对于 0 (作为整数的0) 的判断

例:

PHP
$a = 0; if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量已设置且不为空复制

4、对于 0.0 (作为浮点数的0) 的判断

例:

PHP
$a = 0.0; if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量已设置且不为空复制

5、对于 "0" (作为字符串的0) 的判断

例:

PHP
$a = "0"; if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量已设置且不为空复制

6、对于 NULL 的判断

例:

PHP
$a = null; if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量未设置或变量为空复制

7、对于 FALSE 的判断

例:

PHP
$a = false; if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量已设置且不为空复制

8、对于 array() (一个空数组) 的判断

例:

PHP
$a = array(); if (empty($a)){ echo "empty:变量为空" . "<br>"; }else{ echo "empty:变量不为空" . "<br>"; } // empty:变量为空 if(isset($a)){ echo "isset:变量已设置且不为空" . "<br>"; }else{ echo "isset:变量未设置或变量为空" . "<br>"; } //isset:变量已设置且不为空复制

本文链接:http://blog.sauo.top/?id=349 感谢分享!

分享到:

扫描二维码推送至手机访问。

版权声明:本文由冬眠先生个人博客发布,如需转载请注明出处。

本文链接:http://blog.sauo.top/?id=349

分享给朋友:

“墙裂推荐(PHP中empty ,is_null ,isset, if()的区别?)php中empty是什么意思,php中 empty() 和 isset() 的区别,php中 empty() 和 isset() 的区别,” 的相关文章

万万没想到(Ubuntu安装ssh服务)ubuntu配置ssh服务器,ubuntu安装ssh服务器的方法,ubuntu安装ssh服务器的方法,

万万没想到(Ubuntu安装ssh服务)ubuntu配置ssh服务器,ubuntu安装ssh服务器的方法,ubuntu安装ssh服务器的方法,

免费领取腾讯云服务器! 安装了一个ubuntu系统,想着在内网中用ssh进行远程连接管理。下面这篇博文就说说如果在ubuntu系统中安装ssh远程管理服务。 ubuntu 安装ssh服务器的方法 1、安装 openssh-s...

一篇读懂(PHP for循环)php跳出循环的语句,php中的几种循环语句,php中的几种循环语句,

免费领取腾讯云服务器! 列举几种php脚本中常用的几种循环语句,比如,for,foreach,do....while 等。 php for循环 for循环在很多语言中都经常用到,比如js语言,c语言,java语言等。...

不看后悔(php全局变量有哪些)php全局变量和局部变量的区别,php全局变量与js全局变量的区别,php全局变量与js全局变量的区别,

免费领取腾讯云服务器! 因为经常写php与js代码,有时候使用全局变量的时候经常的混淆,这篇文章就来说说js中的全局变量与php中的全局变量的区别。 js全局变量与php全局变量的区别 php全局变量 php...

干货分享(php输出json中文乱码)json数据中文乱码怎么办,解决 php json中文乱码的问题,解决 php json中文乱码的问题,

免费领取腾讯云服务器! php输出使用json_encode函数生成的json数据的时候,发现数据中的中文被转义成了unicode编码,如果使用ajax请求的json数据还好一点,浏览器会自动将unicode编码转义回来,但如果直接输出到浏览器上,那就会直...

一看就会(imagefilter过滤图像方法)php imagefill,php imagefilter()图片滤镜函数的用法与示例,php imagefilter()图片滤镜函数的用法与示例,

一看就会(imagefilter过滤图像方法)php imagefill,php imagefilter()图片滤镜函数的用法与示例,php imagefilter()图片滤镜函数的用法与示例,

免费领取腾讯云服务器! 有个小需求,需要使用php代码对图片进行颜色调整,比如变成灰色,改变图片的亮度,对比度等等。而php中就内置了一个图片的滤镜函数 imagefilter() ,下面就来具体说说这个函数的用法。 php imagefi...

全程干货(php将图片转为对象)php文件怎么转成图片,php将图片转为base64编码格式图片的方法,php将图片转为base64编码格式图片的方法,

免费领取腾讯云服务器! 下面的博文提供两个利用php代码将图片转为base64编码格式图片的方法,分为php转换本地图片为base64图片以及php转换远程图片为base64图片的方法。...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。