“ThinkPHP”的版本间的差异
来自tomtalk
(→ThinkPHP读取Laravel的Session数据) |
(→相关链接) |
||
第1行: | 第1行: | ||
=相关链接= | =相关链接= | ||
− | http://doc.thinkphp.cn | + | * http://doc.thinkphp.cn ThinkPHP文档中心 |
+ | * http://www.tuicool.com/articles/qmA32q2 Laravel兼容原生PHP session | ||
=安装= | =安装= |
2016年9月22日 (四) 09:36的版本
相关链接
- http://doc.thinkphp.cn ThinkPHP文档中心
- http://www.tuicool.com/articles/qmA32q2 Laravel兼容原生PHP session
安装
获取项目代码,把定文件夹根目录为站点根目录就可以了,不要设置任何东西,就能显示欢迎页。
路由
http://thinkphp.example.com/?a=db_test
试了一下URL_MODEL的几个取值,貌似无效,先使用上面的格式来访问控制器。
把session写入数据库
1、改配置文件
'SESSION_OPTIONS' => array( 'type' => 'Mysqli',//session采用数据库保存 'expire' => 1440,//session过期时间,如果不设就是php.ini中设置的默认值 ), 'SESSION_TABLE' => 'wp_session', //必须设置成这样,如果不加前缀就找不到数据表,这个需要注意
仅配置这个就可以了。type最初设置为db,页面报错用不了,用Mysqli就可以了。
2、建数据表
CREATE TABLE `wp_session` ( `session_id` VARCHAR(255) NOT NULL, `session_expire` INT(11) NOT NULL, `session_data` BLOB, UNIQUE KEY `session_id` (`session_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8
ThinkPHP读取Laravel的Session数据
- ThinkPHP
//仅系列化,一道手续存储。 session.serialize_handle=php //使用ini_set()改变系列化方式不成功,改为修改php.ini文件。 ini_set("session.serialize_handle", "php_serialize");
- Laravel
//先系列化,然后再base64编码存储。 session.serialize_handle=php_serialize base64_encode($data)