作者:pilishen | 来源:互联网 | 2014-03-27 00:19
个人Kohana框架Session和Cookie使用教程,欢迎留言。一.Kohana中Session使用:Session::instance()->set('a','thisisv
个人Kohana框架Session和COOKIE使用教程,欢迎留言。
一.Kohana中Session使用:
Session::instance()->set('a', 'this is value of session'); //设置session值
echo Session::instance()->get('a'); //获取session值
Session::instance()->delete('a'); //删除指定key的session值
Session::instance()->destroy(); //销毁所有session值
其实,Session有不同的适配器,默认如上使用就是Native,不用配置。
- Native:将session数据默认存放在你的web服务器上。例如,如果你正在Apache2上运行PHP,那么session数据就默认存放在你的 php.ini文件里设置的路径指定的文件中。
- Database:将session数据放在一个数据库中。(需要数据库模块)
- COOKIE:将session数据存放在一个局部COOKIE.
二.COOKIE使用,使用COOKIE前在bootstrap.php中设置salt的值,否则会有错误提示。
COOKIE::$salt = 'phpddt.com'; ////自定义COOKIE的salt值,否则有异常提示
当然你还可以设置其它值:
// 设置COOKIE 多久过期
COOKIE::$expiration = 43200;
// 限制有效的COOKIE路径
COOKIE::$path = '/';
// 限制可以访问COOKIE的域名
COOKIE::$domain = 'www.phpddt.com';
// 只可以用安全连接传输COOKIE
COOKIE::$secure = TRUE;
// 只可以用HTTP传输COOKIE,不能用Javascript传输。
COOKIE::$httpOnly= TRUE;
COOKIE使用方法如下:
COOKIE::set('phpddt', 'this is www.phpddt.com'); //设置COOKIE
COOKIE::set('newtest', 'this is new test', 10); //设置COOKIE过期时间,以秒为单位
echo COOKIE::get('phpddt'); //获取COOKIE
echo COOKIE::get('newtest'); //10s后就取不到了
COOKIE::delete('phpddt'); //删除指定key的COOKIE值
下篇会写关于session database适配器配置