举例子说明本文所描述的情景:
假设为前后分离项目,做用户登录时,需要根据session_id启用对应session
而当我们把view页面和后端程序放到一起,使用相同域名时,再次使用之前的程序,就会报session已启动相关的错误
因为在同域下,不需要再使用指定session_id初始化session
针对这样的问题,可以使用php自带的“session_status()”进行判断,如下示例:
if ( php_sapi_name() !== 'cli' ) {
if ( version_compare(phpversion(), '5.4.0', '>=') ) {
if(session_status() !== PHP_SESSION_ACTIVE){
session_id($_GET['session_id']);
session_start();
}
} else {
return session_id() === '' ? FALSE : TRUE;
}
}
注意:使用session_status()函数,php版本不得低于5.4
上一篇:PHP实现AES级别加密解密