CakePHP框架Session设置方法分析


Posted in PHP onFebruary 23, 2017

本文实例讲述了CakePHP框架Session设置方法。分享给大家供大家参考,具体如下:

CakePHP Session 存储选项

CakePHP提供给用户了3种Session数据保存方式:

1. CakePHP安装目下的临时文件;
2. 采用PHP的默认机制;
3. 或者序列化到数据库中.

对应的设置在core.php中分别为:

define('CAKE_SESSION_SAVE', 'php');
# 设置为 'cake',保存session到 /cakedistro/tmp目录
# 设置为 'php',采用PHP的缺省路径
# 设置为 'database',

默认采用PHP的机制.

如果选择在数据库中存储,需要在数据库中建立一张表,在/app/config/sql/sessions.sql有创建数据库的sql脚本.

无论选择哪种Session存储方式,CakePHP的组件方法操作基本一致:

CakePHP Session Component用来与Session进行交互:包括基本的Session读写,通过Session来提示错误、发出提示消息等等.

Session Component在所有 Cake controller 中默认可用.

check(string $name);

检查Session中是否已有$name为键值的数据项.

del(string $name);
delete(string $name);

删除$name 指定的 Session 变量。

error

返回最近由 Cake Session Component 产生的错误,常用于调试。

flash(string $key='flash');

返回最后一条Session中用 setFlash() 设置的消息。如果 $key 已设置,将返回最近存储于其中的消息.

read(string $name);

返回 $name 变量值。

renew

通过创建新的seesion ID,删除原有的ID,将原有Session中信息更新到新的Session中。

setFlash(string $flashMessage, string $layout='default', array $params, string $key='flash');

将$flashMessage 中的信息写入Session(供之后的flash()方法来获取)。

如果 $leyout 设置为 “default”,该消息被存储为 '<div class="message">'.$flashMessage.'</div>'。如果$layout 设置为 '',该消息将按原样保存。如果 $layout 为其他值,该消息以 $layout 所指定的格式保存在 Cake view里。

$params 参数会在未来版本中赋予功能。

$key 允许在键下存储提示消息,flash() 是基于键来读取消息的。

valid当Session有效时返回true,最好在read()操作前用它来确定你要访问的会话是否确实有效.

write(string $name, mixed $value);

将变量 $name,$value写入会话.

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP XML操作类DOMDocument
Dec 16 PHP
MySQL连接数超过限制的解决方法
Jul 17 PHP
比较简单的百度网盘文件直链PHP代码
Mar 24 PHP
IIS6.0中配置php服务全过程解析
Aug 07 PHP
PHP实现把数字ID转字母ID
Aug 12 PHP
PHP面向对象之旅:深入理解static变量与方法
Jan 06 PHP
PHP开发微信支付的代码分享
May 25 PHP
Zend Framework路由器用法实例详解
Dec 11 PHP
简单谈谈 php 文件锁
Feb 19 PHP
PHP微信模板消息操作示例
Jun 29 PHP
PHP实现的mysql读写分离操作示例
May 22 PHP
PHP配置文件php.ini中打开错误报告的设置方法
Jan 09 PHP
cakephp2.X多表联合查询join及使用分页查询的方法
Feb 23 #PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
Feb 23 #PHP
php实现的XML操作(读取)封装类完整实例
Feb 23 #PHP
利用php生成验证码
Feb 23 #PHP
php实现base64图片上传方式实例代码
Feb 22 #PHP
php中实现字符串翻转的方法
Feb 22 #PHP
php生成图片缩略图功能示例
Feb 22 #PHP
You might like
雄兵连:第三季确定会出,不过时间未定,鹤熙是第三季的主角!
2020/03/13 国漫
深入解析PHP的引用计数机制
2013/06/14 PHP
关于URL最大长度限制的相关资料查证
2014/12/23 PHP
PHP数组相加操作及与array_merge的区别浅析
2016/11/26 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
实例分析PHP中PHPMailer发邮件
2017/12/13 PHP
浅析PHP7的多进程及实例源码
2019/04/14 PHP
基于jquery的弹出提示框始终处于窗口的居中位置(类似于alert弹出框的效果)
2011/09/28 Javascript
单击复制文字兼容各浏览器的完美解决方案
2013/07/04 Javascript
浅谈checkbox的一些操作(实战经验)
2013/11/20 Javascript
JS的参数传递示例介绍
2014/02/08 Javascript
javascript实现获取字符串hash值
2015/05/10 Javascript
JQuery组件基于Bootstrap的DropDownList(完整版)
2016/07/05 Javascript
NodeJS中的MongoDB快速入门详细教程
2016/11/11 NodeJs
javascript判断firebug是否开启的方法
2016/11/23 Javascript
jQuery ajax请求struts action实现异步刷新
2017/04/19 jQuery
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
Webstorm2016使用技巧(SVN插件使用)
2018/10/29 Javascript
Vue+Webpack完美整合富文本编辑器TinyMce的方法
2018/11/30 Javascript
vue循环中点击选中再点击取消(单选)的实现
2020/09/10 Javascript
[55:16]Mski vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
配置 Pycharm 默认 Test runner 的图文教程
2018/11/30 Python
如何在Django配置文件里配置session链接
2019/08/06 Python
一些常用的HTML5模式(pattern) 总结
2015/07/14 HTML / CSS
canvas简单连线动画的实现代码
2020/02/04 HTML / CSS
下面这个程序执行后会有什么错误或者效果
2014/11/03 面试题
少年闰土教学反思
2014/02/22 职场文书
《钱学森》听课反思
2014/03/01 职场文书
学雷锋宣传标语
2014/06/25 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
关于艺术节的开幕致辞
2016/03/04 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
详解Oracle数据库中自带的所有表结构(sql代码)
2021/11/20 Oracle
深入浅出讲解Java8函数式编程
2022/01/18 Java/Android
正则表达式拆分url实例代码
2022/02/24 Java/Android