如何在 CakePHP 中获取会话的开始时间


How to get starting time of session in CakePHP?

我需要知道当前会话何时开始。
我可以像这样存储该值:

$this->Session->write('sessionStartTime', time());

但是在什么时候我应该将此代码添加到 CakePHP 2.4.6 中?
我应该添加到AppController的beforeFilter((还是有更好的地方放置它?
还是 CakePHP 会给出会话开始时间?

编辑:
还有这样的低级解决方案。
但我不喜欢,因为它取决于会话存储类型。

$timestamp = filemtime( TMP.'sessions'.DS.'sess_'.session_id() );

Session.timeout - CakePHP 的会话处理程序使会话过期之前的分钟数。这会影响 Session.autoRegeneration(如下(,由 CakeSession 处理。请访问官方文档

和饼干

Session.cookieTimeout值。尽管 php 会话仍然有效,但会话 cookie 上的到期日期不会刷新

当前会话的开始时间可通过 CakeSession::$time 获得。在会话开始之前,它将false