登录  /  注册
博主信息
博文 250
粉丝 3
评论 0
访问量 370647
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
Thinkphp:读取器和修改器
梁凯达的博客
原创
1243人浏览过

读取器:
是Model层里面设置的方法,当其他层调用某个方法
比如:User::get(1)->work,会自动识别User类中的getWorkAttr()方法
当你自定义的时候,则调用自定义的方法,而没有自定义时,则自动调用model的方法
读取器方法命名规范为:
get+属性名的驼峰式命名+Attr
程序在读取属性时自动根据规则检测是否有这个属性对应的方法
比如:
$user = User::get(1);
echo $user->nickname;//自动检测getNicknameAttr
echo $user->email;//自动检测getEmailAttr
echo $user->reg_time//自动检测getRegTimeAttr

在model下的User类,举例
protected function getRegTimeAttr($regitime)
{
returm ‘===’.date(‘y-m-d’,$regitime);
}
函数$regitime为数据库当中的时间戳
protected function getEmailAttr($a,$data)
{
return $data[‘passwords’];//第二个参数$data 为整个数据的对象

}

修改器/或叫写入器:
把上述的get改为set即可完成一个修改器命令
protected function setRegTimeAttr($value)
{
return strtotime($value);
}
//这样当使用写入器的时候,比如在Index类中调用
$user->reg_time = ‘2018-10-1’;
使用这种方法会自动的将上述时间修改为时间戳。

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学