检查写入会话是否已阻止

时间:2013-03-01 13:37:09

标签: php session

Php提供函数session_write_close。我想检查会话是否已经关闭。 session_id()仍会返回值。

session_start();

//
// Some code there
//

session_write_close();

//
// Some code there
//

if( /*is session write closed?*/)
    echo 'Session closed';
else
    echo 'Session still opened';

2 个答案:

答案 0 :(得分:1)

如果您使用的是5.4.0或更高版本的PHP,则可以使用session_status()

答案 1 :(得分:1)

你需要的只是

session_start();
session_write_close();
var_dump(sessionStatus()); // this would return false 

并且

session_start();
var_dump(sessionStatus()); // true

使用的功能

function sessionStatus() {
    if (function_exists('session_status')) {
        return (session_status() == PHP_SESSION_ACTIVE);
    }
    return defined('SID');
}