有關於isset和empty的問題?

WBOY
發布: 2016-10-22 00:00:23
原創
1061 人瀏覽過

最近在看session的問題,需要判斷使用者是否登錄,我發現以下2種方法都可以成功判斷是否登入的問題。
程式碼如下:

<code>第一种:
if(empty($_SESSION)){

    echo '您还未登录,请<a href="login.php">登录</a><p>';

}else{

    echo '欢迎'.$_SESSION['uname'].' 这里是主页 ';

    echo '<a href="quit.php">退出</a><p>';
}

第二种:
if(!isset($_SESSION['uname'])){

    echo '您还未登录,请<a href="login.php">登录</a><p>';

}else{

    echo '欢迎'.$_SESSION['uname'].' 这里是主页 ';

    echo '<a href="quit.php">退出</a><p>';
}

</code>
登入後複製

問題:在第二個判斷語句中,如果只寫$_SESSION而不是$_SESSION['uname']的話,會報錯,而使用第一種方法的話,empty後邊的括號內無論是$_SESSION['uname ']還是$_SESSION都沒問題,請問是什麼原因呢?兩種方法哪一種會好一點?或者說是更安全一點?謝謝

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板