<?php
namespace app\index\model;
use think\Model;
use think\model\concern\SoftDelete;
class User extends Model
{
protected $table = 'user';
protected $pk = 'user_id';
use softDelete;
protected $deleteTime = 'delete_time';
protected $defaultSoftDelete = NULL;
//获取器一般用法
protected function getStatusAttr($value)
{
$status = [1=>'启用',0=>'禁用'];
return $status[$value];
}
//获取器第二种用法,传入第二个参数,引用全部的字段值
protected function getMoneyAttr($value, $data)
{
return $data['name'].'的工资是'.($value+5);
}
//可以位表中不存在的字段设置
protected function getStaffInfoAttr($value, $data)
{
//staff_info:是虚拟字段
//$value:仅仅是一个占位符,没有意义
return '我是'.$data['name'].",工资才".$data['money'];
}
//修改器
protected function setEntryTimeAttr($value){
return strtotime($value);
}
//修改器2,支持第二个参数,引用全部字段值
protected function setMoneyAttr($value, $data)
{
return $value+$data['age'];
}
protected function setIpAttr()
{
return request()->ip();
}
//类型转换,我们读取数据库的数据的时候默认的是字符串类型
protected $type = [
'entry_time' =>'timestamp:Y-m-d',
];
//模型的自动完成,针对写操作的,新增及更新
//相当于给字段设置默认值
protected $insert = [
'age' => 18,
'money' =>2000,
];
protected $update = [
'age' =>11
];
protected $auto = [
'sex' =>1,
'ip'
];
//开启当前模型的自动时间戳
protected $autoWriteTimestamp = true;
//设置一下用户自定义的新增和更新时间的字段名
protected $createTime = "create_time";
protected $updateTime = "update_time";
}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号