在 Eloquent 模型中存储日期有什么好方法?我使用 Laravel 框架的 PHP。
class MyModel extends Eloquent {
// I want a date field here... should it be:
public $endTime = ?;
}
我应该使用保存为整数的时间戳吗?如果我在属性中使用Date对象并保存该对象,那么会发生什么行为?
$table->timestamp('endTime')
,这将创建一个名为endTime
的timestamp
字段。
默认情况下,Eloquent会将created_at、updated_at和deleted_at列转换为Carbon实例,它提供了各种有用的方法,并扩展了本地的PHP DateTime类。您可以通过覆盖模型的getDates方法来自定义自动变异的字段,甚至完全禁用此变异。
在您的模型中添加此方法:
public function getDates()
{
return array('created_at', 'updated_at', 'deleted_at', 'endTime');
}
Laravel
会处理这些字段,默认情况下,每个字段都将是Carbon对象的实例。阅读date mutators。在这种情况下,所有Carbon
的方法都可以用于这些字段。