相信用过thinkphp的用户都知道thinkphp的模型可以完成很多辅助功能,比
如自动验证、自动完成等,今天在开发中遇到自动完成中需要获取session值
然后自动赋值的功能,具体看代码;
class articlelmodel extends model {
protected $_auto = array (
array('addtime','time',1,'function'),
array('username','getname',1,'callback')
);
//这个函数获取session里的name值
protected function getname(){
return $_session["name"];
}
}
这里需要注意最后一个参数function和callback的区别;
function:使用函数,会自动去common/common.php去寻找对应的函数;
callback:使用在当前模型中定义的回调方法
更多编程视频教程下载可到:http://www.jscto.net
$User=new Model('Admin'); // 问题在这一句代码。Model()或M()方法实例化基础模型,而你在模型中添加了自动验证,属于自定义模型。因此自动验证部分不会又作用。// 将上一句按如下修改$User=new AdminModel(); // 直接实例化为你的自定义模型// 或者更简单的$User=D('Admin');// 详细内容参考官方文档 6.2 模型实例化
方法很多,灵活运用,例如
1.在模板中调用{$Think.session}
2.在
3.在模板中写,然后在里面直接编写php代码来判断$_SESSION
4.在Action中将$_SESSION变量通过assign()方法赋值给模板
5.在自定义函数库中,新建一个函数用来返回$_SESSION变量,然后在模板文件中使用{$变量命 | 函数名}来将函数返回的$_SESSION赋给模板中的一个变量
以上五种方法皆可,你也可以想自己的办法。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号