laravel ORM日期修改器用法

laravel ORM日期修改器用法


默认情况下,Eloquent将会转化created_at和updated_at列的值为Carbon实例,该类继承自PHP原生的Datetime类,并提供了各种有用的方法

你可以自定义哪些字段被自动调整修改,甚至可以通过重写模型中的$dates属性完全禁止调整:


<?php


namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model{

    /**

     * 应该被调整为日期的属性

     *

     * @var array

     */

    protected $dates = ['created_at', 'updated_at', 'disabled_at'];

}
如果字段是日期格式时,你可以将其值设置为UNIX时间戳,日期字符串(Y-m-d),日期-时间字符串,Carbon/Carbon实例,日期的值将会自动以正确格式存储到数据库中:

$user = App\User::find(1);

$user->disabled_at = Carbon::now();

$user->save();
正如上面提到的,当获取被罗列在$dates数组中的属性时,它们会被自动转化为Carbon实例,允许你在属性上使用任何Carbon的方法:

$user = App\User::find(1);

return $user->disabled_at->getTimestamp();

www.judyhcm.com
如果你需要自定义时间戳格式,在模型中设置$dateFormat属性,该属性决定日期属性将以何种格式存储在数据库中、以及序列化为数组或JSON时的格式:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Flight extends Model{

    /**

     * 模型日期的存储格式

     *

     * @var string

     */

    protected $dateFormat = 'U';

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值