Laravel-Model时间字段维护

winterSky 2020-06-24 PM 924℃ 0条

Model 层时间配置

    const CREATED_AT = 'create_time';
    const UPDATED_AT = 'update_time';
    protected $table = 'app_expand';
    public $timestamps = true;

结果


public $timestamps = true; 

Illuminate\Support\Carbon Object
(
    [date] => 2017-02-28 16:11:29.000000
    [timezone_type] => 3
    [timezone] => Asia/Shanghai
)
public $timestamps = false;
返回时间戳
 

注意如果timestamps = true 但是没有设置CREATED_AT 与UPDATED_AT 返回的也是时间戳

格式化时间

//第一种方式  返回Carbon对象时候
$this->create_time->toDateTimeString();

//第二种返回时间戳时候 使用修改器

 public function getCreateTimeAttribute($value)
 {
     return date('Y-m-d H:i:s',$value);
 }

//当字段为时间戳时候可以使用Carbon类
 use Carbon\Carbon;
 public function getCreateTimeAttribute($value)
 {
    return Carbon::parse($value)->toDateTimeString();
  }

Carbon 时间格式相互转换

$data["created_at"] = $value->created_at->format('Y-m-d H:i:s');
$data["created_at"] = $value->created_at->timestamp;

如果$timestamps = true; 做写入操作的时候又想写入时间戳


$model = new BossDiscount();
//注意这个属于要在ctime之前
$model->timestamps = false;
$model->order_id = 111;
$model->ctime = time();

参考链接
简单使用
https://blog.csdn.net/z_ruitao/article/details/82725766
Carbon类常用函数
https://blog.csdn.net/johnhan9/article/details/88635241
model时间字段维护说明
https://www.cnblogs.com/heyue0117/p/12371727.html

标签: none

非特殊说明,本博所有文章均为博主原创。

评论啦~