CakePHP中文手册【翻译】-Cake 对话(Session)组件

Cake 对话(Session)组件

1

Cake Session存储选项

Cake预先设置3种方法来存储session数据:在Cake安装目录下作为临时文件存储,使用缺省的PHP机制,或者序列化到数据库中。缺省的,Cake使用PHP缺省的设置。为了覆写它来使用临时文件或数据库,编辑/app/config/core.php里的核心配置文件。将CAKE_SESSION_SAVE常数修改为'cake','php','database',这取决于你应用程序的需求。

core.php Session配置

/**

 * CakePHP includes 3 types of session saves

 * database or file. Set this to your preferred method.

 * If you want to use your own save handler place it in

 * app/config/name.php DO NOT USE file or database as the name.

 * and use just the name portion below.

 *

 * Setting this to cake will save files to /cakedistro/tmp directory

 * Setting it to php will use the php default save path

 * Setting it to database will use the database

 *

 *

 */

define('CAKE_SESSION_SAVE', 'php')

为了使用数据库session存储,你需要在数据库里创建一个表。此表的schema可以在/app/config/sql/sessions.sql中找到。

2

使用Cake Session组件

Cake Session组件用来和session信息进行交互。它不仅包含基本的Session读写操作,同时也包含使用session错误和接收信息(例如,"Your data has been saved")的特性。缺省的,Session组件在所有Cake Controller中可用。

下面是你经常使用的某些函数:

check

  • string $name

检查看是否当前指定的$name键已经在session中设置。

del

  • string $name

delete

  • string $name

删除指定为$nameSession变量。

error

返回最后由Cake Session组件产生的错误。大多数在调试中使用。

flash