CakePHP框架Session设置方法分析
本文实例讲述了CakePHP框架Session设置方法。分享给大家供大家参考,具体如下:
CakePHPSession存储选项
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的组件方法操作基本一致:
CakePHPSessionComponent用来与Session进行交互:包括基本的Session读写,通过Session来提示错误、发出提示消息等等.
SessionComponent在所有Cakecontroller中默认可用.
check(string$name);
检查Session中是否已有$name为键值的数据项.
del(string$name);
delete(string$name);
删除$name指定的Session变量。
error
返回最近由CakeSessionComponent产生的错误,常用于调试。
flash(string$key='flash');
返回最后一条Session中用setFlash()设置的消息。如果$key已设置,将返回最近存储于其中的消息.
read(string$name);
返回$name变量值。
renew
通过创建新的seesionID,删除原有的ID,将原有Session中信息更新到新的Session中。
setFlash(string$flashMessage,string$layout='default',array$params,string$key='flash');
将$flashMessage中的信息写入Session(供之后的flash()方法来获取)。
如果$leyout设置为“default”,该消息被存储为'<divclass="message">'.$flashMessage.'</div>'。如果$layout设置为'',该消息将按原样保存。如果$layout为其他值,该消息以$layout所指定的格式保存在Cakeview里。
$params参数会在未来版本中赋予功能。
$key允许在键下存储提示消息,flash()是基于键来读取消息的。
valid当Session有效时返回true,最好在read()操作前用它来确定你要访问的会话是否确实有效.
write(string$name,mixed$value);
将变量$name,$value写入会话.
更多关于php框架相关内容感兴趣的读者可查看本站专题:《php优秀开发框架总结》、《codeigniter入门教程》、《ThinkPHP入门教程》、《ZendFrameWork框架入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。