为了账号安全,请及时绑定邮箱和手机立即绑定

empty()和!isset()

empty()和!isset()

PHP
qq_阿瑞_0 2017-04-05 10:39:33
$id=null;if (empty($id)) {    echo 1;}else {    echo 2;}print'<br>';if (!isset($id)) {    echo 1;}else {    echo 2;}结果怎么为:1  1呢?百思不得其解。
查看完整描述

2 回答

已采纳
?
野生码农在线co腚

TA贡献134条经验 获得超63个赞

empty()函数是用来测试变量是否已经配置。若变量已存在、非空字符串或者非零,则返回 false 值;反之返回 true值。

以下的东西被认为是空的:

"" (空字符串)

0 (作为整数的0)

0.0 (作为浮点数的0)

"0" (作为字符串的0)

NULL

FALSE

array() (一个空数组)

$var; (一个声明了,但是没有值的变量)

所以第一个echo 1.

isset ()检测变量是否设置,并且不是 NULL。返回值 :如果 var 存在并且值不是 NULL 则返回 TRUE,否则返回 FALSE。

简单的来说,empty()函数如果要检测的变量是空则返回true.isset()要检测的变量是空,则返回false. 第二个if语句里面还有个非! 所以 同样走第一步 echo 1


查看完整回答
反对 回复 2017-04-05
?
侠客岛的含笑

TA贡献552条经验 获得超285个赞

特殊的 NULL 值表示一个变量没有值。

查看完整回答
反对 回复 2017-04-05
  • 2 回答
  • 1 关注
  • 1467 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信