发布日期:2018-03-26
检查PHP SESSION是否已经启动+ 查看更多
检查PHP SESSION是否已经启动
+ 查看更多
发布日期:2017-04-12 14:28
分类:PHP
浏览次数:132
我有一个PHP文件,有时被一个已经开始会话的页面调用,有时被没有会话启动的页面调用。因此,当我在脚本中调用session_start()时,我有时会得到“session already started”的错误信息。为此我放入了下面这些代码:
if(!isset($_COOKIE["PHPSESSID"])) { session_start(); }
但是这时候我得到了这样的警告信息:
Notice: Undefined variable: _SESSION
有没有更好的方法来检查会话是否已经开始?如果我使用@session_start它会使代码正常工作并且仅仅关闭警告信息吗?
最佳答案:
PHP> = 5.4.0版本的推荐方法
if (session_status() PHP_SESSION_NONE) { session_start(); }
资料来源: http://www.php.net/manual/en/function.session-status.php
对于PHP < 5.4.0的版本
if(session_id() '') { session_start(); }