关于Thinkphp5 里面数据库自动更新与创建时间的问题
作者:
秒速五厘米
我们有时候往数据库里面写入新的一条数据 时,可能需要自动更新时间、自动创建时间、这样就可以方便我们、从而大大减小我们的代码量;
不过在TP5里面有一个小规律,就是save()与insert()语句的区别;
1、我们先看一下TP5里面自动更新时间戳与创建时间戳的方法
(1)、在database.php里面设置全局的自动更新、创建时间戳、
// 开启自动写入时间戳字段 'auto_timestamp' => true,
(2)、在单个模型里面创建 局部自动更新、创建局部自动创建时间戳
protected $autoWriteTimestamp = true; protected $updateTime = 'update_time'; protected $createTime = false;
2、注意了、当我们在控制器里面插入数据 的时候,如果使用insert()语句、那么 模型里面的这个自动更新与自动创建时间是不会生效的、
3、当我们使用save()语句后,这个模型里面的时间戳才会生效
代码:
$res = $this -> clubsMoney -> save( ['name'=>$data['name'], 'all'=>$data['all'], 'c_id'=>$data['c_id'], 'create_time'=>$data['create_time'] ]);