概述
PHP 5.4 及以上可以用 session_status() 的返回值来判断,PHP 5.4 以下用 session_id() 是否有值来判断,当然,PHP 5.4 也可以用这种方法判断,参考代码如下:
/**
* 会话是否已开启
*
* @return bool
*/
function session_is_started() {
if (php_sapi_name() !== 'cli') {
if (version_compare(phpversion(), '5.4.0', '>=')) {
return session_status() === PHP_SESSION_ACTIVE ? true : false;
} else {
return session_id() === '' ? false : true;
}
}
return false;
}
示例:
// 开启Session
if (session_is_started() === false) {
session_start();
}
官方 session_status() 返回值为
PHP_SESSION_DISABLED:会话是被禁用的。
PHP_SESSION_NONE:会话是启用的,但不存在当前会话。
PHP_SESSION_ACTIVE:会话是启用的,而且存在当前会话。
0 ----> PHP_SESSION_DISABLED if sessions are disabled.
1 ----> PHP_SESSION_NONE if sessions are enabled, but none exists.
2 ----> PHP_SESSION_ACTIVE if sessions are enabled, and one exists.
最后
以上就是甜甜口红为你收集整理的php 检测session,PHP如何判断Session是否出于“已开启”状态 ? session_start()的全部内容,希望文章能够帮你解决php 检测session,PHP如何判断Session是否出于“已开启”状态 ? session_start()所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复