首页 > PHP资讯 > PHP培训技术 > KohanaSession适配器配置,将session数据存储到数据表(Kohana3.3)

KohanaSession适配器配置,将session数据存储到数据表(Kohana3.3)

PHP培训技术

前一篇日志记录了 ,不过用的是默认的native适配器,如果你想使用database适配器session数据存储到数据表,配置就稍微复杂点。
第一步:需要你启用Database模块,不多说了,在bootstrap.php中 .
第二步:通过创建一个APPPATH/config/session.php的session配置文件,你可以应用配置设置到每个session的适配器。 

return array(    'native' => array(        'name' => 'session_name',        //'lifetime' => 43200,  //默认浏览器关闭时销毁    ),    'cookie' => array(        'name' => 'cookie_name',        'encrypted' => TRUE,        'lifetime' => 43200,    ),    'database' => array(        'name' => 'database_name',        'encrypted' => FALSE,  //如果这里你设置TURE,那么你就要配置encrypt        'lifetime' => 43200,        'group' => 'default',        'table' => 'sessions',        'columns' => array(            'session_id'  => 'session_id',            'last_active' => 'last_active',            'contents'    => 'contents'        ),        'gc' => 500,    ),);

关于配置说明:
第三步:建立存储表
CREATE TABLE  `sessions` (    `session_id` VARCHAR(24) NOT NULL,    `last_active` INT UNSIGNED NOT NULL,    `contents` TEXT NOT NULL,    PRIMARY KEY (`session_id`),    INDEX (`last_active`)) ENGINE = MYISAM;

表说明:
session_id   "id"列的名称
last_active   session最后一次进行更新的UNIX时间戳
contents   用一个序列化的字符串存储session数据,并选择性地加密 
最后,如上说明,如果你的session.php中'encrypted' => TRUE,那么你还要建立APPPATH/config/encrypt.php文件:
return array('default' => array(          'key' => 'phpddt.com',          'cipher' => MCRYPT_RIJNDAEL_128,          'mode'   => MCRYPT_MODE_NOFB,      ), );

PHP培训技术

本文由欣才IT学院整理发布,未经许可,禁止转载。
支持38不支持0