TP5修改器方法增加第三个参数传入关联数据,修改器的作用是可以在数据赋值的时候自动进行转换处理,例如:
class User extends Model { public function setNameAttr($value) { return strtolower($value); } }
使用说明,例如我们在做微信小程序的时候,在调用网站的数据,数据库查询出来的是不带域名的情况,如果是跨域的情况,这时我们的图片链接,是要经过处理,这是就可以用到tp5带的“修改器”功能。
例如我们有一张数据表名称为tp_goods
表中有字段及数据
id 主键id
goods_name 商品名称
goods_thumb 商品缩略图
addtime 时间
(1)首先,我们在模型下创件一个文件,Goods.php(如果表明是不是这种情况,例如:tp_wx_goods,则创建 WxGoods)。
(2)往模型文件添加如下代码
<?php namespace app\wxapi\model; use think\Model; class Goods extends model { public function getGoodsThumbAttr($value){ //图片路径转换 return 'http://www.tpxhm.com'.$value; } public function getAddtimeAttr($value){ //时间转换 return date("Y-m-d H:i",$addtime); } }
(3)控制器下采用模型的方式使用
<?php namespace app\wxapi\controller; use think\Db; class Index { public function getGoods(){ $resIco=model('goods')->order('sort asc')->select(); return json(['code'=>200,'resIco'=>$resIco]); } }
tp5下的修改器方便了我们的使用,大家可以尝试下进行数据转换。
文章评论(0)