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 相关文章推荐
dedecms系统常用术语汇总
Apr 03 PHP
PHP中用header图片地址 简单隐藏图片源地址
Apr 09 PHP
PHP 文件上传全攻略
Apr 28 PHP
使用PHP下载CSS文件中的图片的代码
Sep 24 PHP
PHP获取一个字符串中间一部分字符的方法
Aug 19 PHP
php合并数组中相同元素的方法
Nov 13 PHP
在WordPress中使用wp-cron插件来设置定时任务
Dec 10 PHP
php基于jquery的ajax技术传递json数据简单实例
Apr 15 PHP
php微信公众平台开发(三)订阅事件处理
Dec 06 PHP
微信第三方登录(原生)demo【必看篇】
May 26 PHP
php多进程应用场景实例详解
Jul 22 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
Dec 16 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
关于PHP转换超过2038年日期出错的问题解决
2017/06/28 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
php调用云片网接口发送短信的实现方法
2017/10/25 PHP
php实现微信分享朋友链接功能
2019/02/18 PHP
JavaScript 学习笔记一些小技巧
2010/03/28 Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
2010/04/30 Javascript
jQuery 验证插件 Web前端设计模式(asp.net)
2010/10/17 Javascript
yepnope.js 异步加载资源文件
2011/09/08 Javascript
javascript 小数取整简单实现方式
2014/05/30 Javascript
JavaScript极简入门教程(二):对象和函数
2014/10/25 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
2016/04/01 Javascript
深入理解javascript函数参数与闭包
2016/12/12 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
使用JavaScript实现表格编辑器(实例讲解)
2017/08/02 Javascript
详解使用nvm管理多版本node的方法
2017/08/30 Javascript
tracking.js页面人脸识别插件使用方法
2020/04/16 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
openlayers4.6.5实现距离量测和面积量测
2020/09/25 Javascript
pycharm 取消默认的右击运行unittest的方法
2018/11/29 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
2019/02/19 Python
详解python的argpare和click模块小结
2019/03/31 Python
python英语单词测试小程序代码实例
2019/09/09 Python
深入浅析pycharm中 Make available to all projects的含义
2020/09/15 Python
python字符串拼接+和join的区别详解
2020/12/03 Python
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
意大利一家专营包包和配饰的网上商店:Borse Last Minute
2019/08/26 全球购物
AJAX应用和传统Web应用有什么不同
2013/08/24 面试题
医学检验专业个人求职信范文
2013/12/04 职场文书
青年文明号服务承诺
2014/03/31 职场文书
设备管理实施方案
2014/05/31 职场文书
财务部岗位职责
2015/02/03 职场文书
一个都不能少观后感
2015/06/04 职场文书
《月歌。》宣布制作10周年纪念剧场版《RABBITS KINGDOM THE MOVIE》
2022/04/02 日漫