Codeigniter - 如何获得会话tempdata的剩余过期时间?

时间:2018-01-09 03:00:01

标签: php session session-variables codeigniter-3

我想获得会话tempdata先前设置的到期时间的剩余时间。无论如何我能得到它吗?

编辑 - 我在讨论 Codeigniter 框架中 Session 库中名为mark_as_temp()的方法。

  

CodeIgniter还支持“tempdata”或具有特定的会话数据   到期时间。值过期后,或会话到期或是   删除后,该值将自动删除。

使用此功能,您可以将现有会话变量标记为在先前设置的时间内过期。时间到期后,仅从$_SESSION数组中删除该特定会话变量。

$_SESSION['item'] = 'value';
$this->session->mark_as_temp('item', 300); // Expire in 5 minutes

我想要的是获得剩余时间,直到该临时会话变量到期 - 即在页面刷新/重定向之后。

1 个答案:

答案 0 :(得分:0)

没有一个答案真正回答了这个问题。

为什么?

如果codeigniter已经存储了会话时间,为什么还要存储自己的会话时间,问题是“如何从codeigniter中退出。”

如何

我发现 CI $ _ SESSION 数据存储在键 <__ ci_vars> 中。示例:

$this->session->set_tempdata("mykey", "something", 500);   

echo $_SESSION[__ci_vars]["mykey"] // the second key is the name of the tempdata;

//I tried with $this->session ... didn't work for me.

我认为它存储了纪元时间(时间戳),之后将删除临时数据。

警告

如果CI更新...好吧,你知道。

相关问题