【问题标题】:Symfony 2 get current session timeSymfony 2 获取当前会话时间
【发布时间】:2016-09-30 17:56:48
【问题描述】:

我正在像这样开始会话:

$session = new Session();
$session->start();

浏览文档我找到了返回会话生命周期的方法。默认 Symfony 2.3 会话时间是 3600 秒。有没有返回当前会话时间的方法? (例如会话持续 10 分钟,所以我会得到 600 秒)。我在文档中没有找到类似的内容。

或者有没有办法手动计算这个时间并在会话期间通过页面携带这个值?

【问题讨论】:

标签: php symfony session


【解决方案1】:

当然可以。

    $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 oflastUsed,具体取决于您的需要。 created 是会话初始化的时间(用户的第一页请求),而lastUsed 当然是最新的。但既然你说的是关于会话生命周期的东西,你可能想要使用第二个,因为那是生命周期相对的时间点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-22
    • 2018-08-25
    • 2016-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多