我试图在我的laravel 5.5中实现mutators。项目,因为看起来这将是自动转换日期对象的最佳方式,但由于某种原因,它不起作用。我试图完成的是从mysql格式Y-m-d加载日期对象并将其转换为d.m.Y并将格式为d.m.Y的日期对象写入mysql,格式为Y-m-d。我经常遇到“未找到分隔符”或“格式错误”等错误。
protected $dateFormat = 'Y-m-d h:i';
protected $dates = [
'joined',
];
function getJoinedAttribute()
{
return $this->attributes['joined']->format('d.m.Y');
}
function setJoinedAttribute()
{
return $this->attributes['joined']->format('Y-m-d');
}
答案 0 :(得分:2)
您可以使用Carbon库来转换日期。
像这样:
public function getDobAttribute($value)
{
return Carbon::parse($value)->format('d/m/Y');
}
public function setDobAttribute($value)
{
$this->attributes['dob'] = Carbon::createFromFormat('d/m/Y', $value)->toDateString();
}