我有这个,并且很好地给我英国格式的日期:
protected $dateFormat = 'd-m-Y';
protected $dates = ['purchased', 'warranty_expires', 'scrapped_on', 'location_date', 'user_date'];
但是,我也创建并修改了(不是标准的Laravel,但我自己的)Timestamps,而不是日期。如何在检索这两个字段时自动将这两个字段的格式化为类似于' d-m-Y H:i:s' ?
答案 0 :(得分:1)
您可以使用Carbon库
执行此操作public function getFormattedPurchasedAttribute($date)
{
return Carbon::createFromFormat('Y-m-d H:i:s', $date)->format('d-m-Y H:i:s');
}
你必须使用碳类。将此行写在使用所有命名空间的顶部。
use Carbon;
答案 1 :(得分:0)
我个人不使用$dateFormat
属性,因为它会更改所有日期字段的格式。我要做的是创建自定义访问器以获取格式化字段,例如:
public function getFormattedPurchasedAttribute($value) {
return $this->asDateTime($value)->format('d-m-Y H:i:s');
}
因此您现在可以使用$model-formatted_purchased
以您想要的方式格式化purchased
字段