这篇文章给大家分享的是有关怎么让thinkphp在模型中自动完成会话赋值的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
相信用过thinkphp的用户都知道thinkphp的模型可以完成很多辅助功能,比如自动验证,自动完成等,今天在开发中遇到自动完成中需要获取会话值
然后自动赋值的功能,具体看代码;
class ArticlelModel extends Model { ,, protected 才能;_auto 美元;=,array (, ,,,阵列(& # 39;addtime& # 39; & # 39;时间# 39;,1 & # 39;函数# 39;), ,,,阵列(& # 39;用户名# 39;& # 39;getname # 39;, 1 & # 39;调# 39;) ,,); ,,//这才能个函数获取会话里值的名称 protected 才能;function  getName () { ,,,return $ _SESSION (“name"); ,,} }
这里需要注意最后一个参数和回调函数的区别;
功能:使用函数,会自动去共同/常见。php去寻找对应的函数;
回调:使用在当前模型中定义的回调方法
,值(可选):要设置的会话值,如果传入空表示删除会话,默认为空字符串返回值见详(根据具体的用法返回不同的值)
会话函数是一个多元化操作函数,传入不同的参数调用可以完成不同的功能操作,包括下面一些功能。(————)
会话初始化设置
如果会议方法的名字参数传入数组则表示进行会话初始化设置,例如:
会话(数组(& # 39;名字# 39;=祝辞& # 39;session_id # 39;, & # 39;到期# 39;=祝辞;3600));
支持传入参的会话数包括:
参数名说明idsession_id值namesession_name值pathsession_save_path值prefixsession本地化空间前缀expiresession。gc_maxlifetime设置值domainsession。cookie_domain设置值use_cookiessession。use_cookies设置值use_trans_sidsession。use_trans_sid设置值cache_limitersession_cache_limiter设置值cache_expiresession_cache_expire设置值typesession夹头类型,可以使用夹头驱动扩展会话初始化设置方法无需手动调用,在应用程序类的初始化工作结束后会自动调用,通常项目只需要配置SESSION_OPTIONS参数即可,SESSION_OPTIONS参数的设置是一个数组,支持的索引名和前面的会话初始化参数相同。
默认情况下,初始化之后系统会自动启动会话,如果不希望系统自动启动会话的话,可以设置SESSION_AUTO_START为false,例如:
& # 39; SESSION_AUTO_START& # 39;,=在假
关闭自动启动后可以项目的公共文件或者在控制器中通过手动调用session_start或者会话(& # 39;[开始]& # 39;)启动会话。
<强>会话赋值强>
会话赋值比较简单,直接使用:
会话(& # 39;名字# 39;& # 39;价值# 39;);,//设置会话
相当于:
$ _SESSION[& # 39;名字# 39;],=,& # 39;价值# 39;;
<强>会话取值强>
会话取值使用: 时间=美元value 会话(& # 39;名字# 39;); 相当于使用: value 美元;=,$ _SESSION[& # 39;名字# 39;];
<强>会话删除
强>
会话(& # 39;名字# 39;,null),,//,删除名称 相当于: 设置($ _SESSION[& # 39;名字# 39;]); 要删除所有的会话,可以使用: 会话(null);,//,清空当前的会话 相当于: 数组$ _SESSION =, ();
<强>会话判断
>强要判断一个会话值是否已经设置,可以使用
会话(& # 39;?名字# 39;);
用于判断名称为名字的会话值是否已经设置
相当于:
收取($ _SESSION[& # 39;名字# 39;]);
<强>会话管理
强>会话方法支持一些简单的会话管理操作,用法如下:
会话(& # 39;[操作名]& # 39;);
支持的操作名包括:
使用示例如下:
会话(& # 39;[停顿]& # 39;);//暂停会话写入
会话(& # 39;[开始]& # 39;);//启动会话
会话(& # 39;(摧毁)& # 39;);//销毁会话
会话(& # 39;(再生)& # 39;);//重新生成会话id
<强>本地化支持强>
如果在初始化会话设置的时候传入前缀参数或者单独设置了SESSION_PREFIX参数的话,就可以启用本地化会话管理支持。启动本地化会话后,所有的赋值,取值,删除以及判断操作都会自动支持本地化会话。