有关于isset和empty的问题?

原创
2016-10-22 00:00:23 736浏览

最近在看session的问题,需要判断用户是否登录,我发现以下2种方法都可以成功判断是否登录的问题。
代码如下:

第一种:
if(empty($_SESSION)){

    echo '您还未登录,请登录

'; }else{ echo '欢迎'.$_SESSION['uname'].' 这里是主页 '; echo '退出

'; } 第二种: if(!isset($_SESSION['uname'])){ echo '您还未登录,请登录

'; }else{ echo '欢迎'.$_SESSION['uname'].' 这里是主页 '; echo '退出

'; }

问题:在第二个判断语句中,如果只写$_SESSION而不是$_SESSION['uname']的话,会报错,而使用第一种方法的话,empty后边的括号内无论是$_SESSION['uname']还是$_SESSION都没问题,请问是什么原因呢?两种方法哪一种会更好一点?或者说是更安全一点?谢谢

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。