服务器之家

服务器之家 > 正文

CakePHP框架Session设置方法分析

时间:2021-04-26 16:02     来源/作者:lesorb

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

CakePHP Session 存储选项

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

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

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

?
1
2
3
4
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程序设计有所帮助。

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
返回顶部