5 分钟后 Codeigniter 会话到期

Codeigniter session expiration after 5 mins

我将 OTP(一次性密码)会话用作 $this->session->set_userdata('otp')。我想将此会话的过期时间设置为 5 分钟(300 秒)。对于我代码中的所有其他会话,我希望过期时间与正常会话时间一样。这该怎么做?

要事第一 - 您需要正确使用条款。 "session" 就是全部,而据我了解,您只想为某个会话 "item".

设置 TTL

也就是说,您不能使用 CodeIgniter 2 执行此操作,也不应该 - 2.x 版本树不再受支持。

升级到 CodeIgniter 3,您将能够使用“tempdata”功能,这正是您想要的:

// This will make $_SESSION['otp'] available only for the next 5 minutes
$this->session->set_tempdata('otp', $your_value, 300);

顺便说一句,即使您跳过该参数,5 分钟也是默认 TTL。