我正在这样开始 session :
$session = new Session();
$session->start();
浏览文档我找到了返回 session 生命周期的方法。默认的 Symfony 2.3 session 时间是 3600 秒。有没有一种方法可以返回当前 session 时间? (例如 session 持续 10 分钟,所以我会得到 600s)。我在文档中没有找到类似的内容。
或者有没有办法手动统计这个时间,并在session期间通过页面携带这个值?
最佳答案
当然可以。
$session = $this->get('session'); //you can get session from service container. no need for creating new instance.
// MetadataBag is what you're looking for
$sessionBag = $session->getMetadataBag();
// Here we go...
var_dump($sessionBag->getCreated());
var_dump($sessionBag->getLastUsed());
根据您的需要,您可能希望使用 created
of lastUsed
。 created
是 session 初始化的时间(用户的第一个页面请求),而 lastUsed
当然是最新的。但是既然你在谈论 session 生命周期,你可能想使用第二个,因为这是生命周期相对的时间点。
关于php - Symfony 2 获取当前 session 时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39786399/