对手术方法ThinkPHP总结会议

本文详细介绍了各种操作方法,在会话ThinkPHP。详情如下:

在ThinkPHP操作会议正式文件如下:

启动会议

暂停会议

清除清除会话

摧毁破坏会议

获取会话值

本地获取私人会话值

设置会话值

SETLOCAL设置私有会话值

名称获取或设置session_name

无论is_set设置session值

无论是私人会议的价值由is_setlocal

ID获取或设置session_id

获取或设置session_save_path路径

setexpire设置会话过期时间

setcookiedomain设置有效的域名

setcallback设置回调函数,当会话对象反序列化

最常用的操作方法示例如下:


如果变量存在,则检测会话
会议::is_set('name');
分配会话变量
会议::集('name',币值的);
获取会话变量
会议::得到('name');




与会话相关的配置参数代码如下所示:


session_name= > 'thinkid ',session_name / /默认
session_path= >,使用默认的会话保存 / /路径
session_type= >文件 / /默认数据库和文件会话类型的支持
session_expire= > '300000 ' / /默认会话有效
session_table= > 'think_session,会话/ /数据库表名
session_callback= > / /回调方法反序列化对象的




需要注意的session_name参数。如果需要在不同项之间共享会话的值,则设置不同的值,否则保持相同的默认值。

如果你设置session_name值相同,但要创建一个基于项目的私人会议空间,应该做些什么ThinkPHP还支持私人会话操作,以项目为会议空间,例如,我们改变以下:


检测会话是否存在一个变量(有效的当前项目)
会议::is_setlocal('name');
分配会话变量(有效的当前项目)
会议::SETLOCAL('name',币值的);
获取会话变量(有效的当前项目)
会议::本地('name');




这样,全局会话操作不会冲突,可以用于某些特殊情况。

ThinkPHP支持会话运行在数据库模式,建立数据库session_type价值。如果你使用的数据库模式,确保你的session_table的价值,和进口的DDL下面您的数据库(MySQL)。


创建表(` think_session `
` ID ` int(11)符号的非空auto_increment,
` session_id ` varchar(255)不为空,
` session_expires ` int(11)不为空,
` session_data ` BLOB,
主键(id)





注意,在DB会话模式的数据库连接将由该项目的数据库配置信息连接。除了数据库模式,还可以增加其他方式的会话保存机制,如内存、缓存等,只要我们增加对线对应的滤波器,使用session_set_save_handler方法,的filtersessiondb.class.php参考定义文件下think.util.filter具体实施方法。



作出简单的着陆判决

在着陆检测之后,给出会话值,以便会话的值不是空的,也就是说false。


_session美元{ C('user_auth_key ')} = $ loginfind { 'id' };




{ C('user_auth_key ')}是一个内置的方法和一种用于thinkphp功能类。默认值为空时的config.php文件没有配置

账户价值进行loginfind美元{ 'id' }给了它,并默认关闭网页会话将自动删除和消失!

其他页面按以下格式判断


如果(!isset($ _session { C('user_auth_key)})){ / / isset是测试变量分配!
美元->重定向('login ','login '); / /注册页面
}