我想在kohana应用程序之外获取kohana会话数据。我的意思是说我想把会话数据放在一个不是kohana页面的静态文件中。
答案 0 :(得分:2)
我尝试了很多东西,而且我找到了答案,
在您的控制器类中,在kohana会话实例之前获取本机会话ID并存储它。现在关闭本机会话并通过将会话ID作为参数传递来启动kohana会话。
session_start();
// Store session id and close the session
$sessionId = session_id();
session_write_close();
// Then we can restore the session by using the session id
// and the Session class from Kohana
Session::Instance(Session::$default, $sessionId);
现在您可以访问kohana应用程序内的会话。
答案 1 :(得分:1)
session_name('kohana'); //Your session name
print_r($_SESSION);
您可以通过在APPPATH/config/session.php
创建会话配置文件,将配置设置应用于每个会话适配器。以下示例配置文件定义了每个适配器的所有设置:
[!!]与cookies一样,“生命周期”设置为“0”表示会话将在浏览器关闭时到期。
return array(
'native' => array(
'name' => 'session_name',
'lifetime' => 43200,
),
'cookie' => array(
'name' => 'cookie_name',
'encrypted' => TRUE,
'lifetime' => 43200,
),
'database' => array(
'name' => 'cookie_name',
'encrypted' => TRUE,
'lifetime' => 43200,
'group' => 'default',
'table' => 'table_name',
'columns' => array(
'session_id' => 'session_id',
'last_active' => 'last_active',
'contents' => 'contents'
),
'gc' => 500,
),
);