【发布时间】:2020-11-11 20:50:58
【问题描述】:
当我使用 Laravel 从数据库中获取数据时,我得到了一些时间戳字段,例如“created_at”、“updated_at”......
这些字段是什么类型的类,返回什么类型的类true的表达式$created_at instanceof DatetimeClass
谢谢
【问题讨论】:
当我使用 Laravel 从数据库中获取数据时,我得到了一些时间戳字段,例如“created_at”、“updated_at”......
这些字段是什么类型的类,返回什么类型的类true的表达式$created_at instanceof DatetimeClass
谢谢
【问题讨论】:
最近的 Laravel 使用 (Carbon library v2) 对于该类型的数据 (Illuminate\Support\Carbon)。
至于你问题的... instanceof DatetimeClass 部分,我不确定你到底指的是什么DatetimeClass 类,但我假设你的意思是内置的DateTime 类。如果是这样,您可以通过调用 toDateTime() 从 Carbon 对象中获取 DateTime,即:
$dt = $model->created_at->toDateTime();
或者,编辑您的 ... instanceof ... 用于针对 Carbon 进行测试。
【讨论】:
还请查看 Laravel 中的日期修改器。 Laravel 会自动转换时间戳(created_at, updated_at) 或者当你需要在数据库中定义自定义日期字段时,你可以在模型中定义这些:https://laravel.com/docs/7.x/eloquent-mutators#date-mutators
如果您不想自动转换,可以使用 $carbonObject = Carbon::parse('2020-02-03'); 解析日期的字符串表示形式
【讨论】: