php if session,php – `if(isset($_ SESSION))`和`if($_SESSION)`之间的区别?

根据PHP.net,isset()执行以下操作:

Determine if a variable is set and is not NULL.

写作时:

您正在检查$_SESSION [‘username’]是否等于true.换句话说,您正在检查该值是否不等于false.

根据PHP.net,以下被认为是错误的:

When converting to boolean, the following values are considered FALSE:

the boolean FALSE itself

the integer 0 (zero)

the float 0.0 (zero)

the empty string, and the string "0"

an array with zero elements

an object with zero member variables (PHP 4 only)

the special type NULL (including unset variables)

SimpleXML objects created from empty tags

如您所见,未设置的变量/ NULL变量被视为FALSE.因此,通过测试$_SESSION元素是否为true,您还可以确定它是否存在.

另一方面,Isset实际检查变量是否存在.如果您想知道该名称是否存在SESSION变量,请使用isset()作为测试它的TRUE / FALSE不依赖于变量是否存在.

此外,请看以下示例:

$_SESSION['a'] = FALSE;

if($_SESSION['a']){

echo 'Hello'; //This line is NOT echo'd.

}

if(isset($_SESSION['b'])){

echo 'Hello'; //This line is NOT echo'd because $_SESSION['b'] has not been set.

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值