Laravel 增变器、访问器
Laravel Mutators, Accessors
我已经尝试在我的 laravel 5.5 中实现突变器。项目,因为看起来这将是自动转换日期对象的最佳方式,但由于某种原因它不起作用。我试图完成的是从 mysql 格式 Y-m-d 加载日期对象并将其转换为 d.m.Y 并将格式为 d.m.Y 的日期对象写入 mysql 格式Y-m-d。我不断收到 "delimiter not found" 或 "format error" 等错误
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');
}
您应该使用 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();
}
我已经尝试在我的 laravel 5.5 中实现突变器。项目,因为看起来这将是自动转换日期对象的最佳方式,但由于某种原因它不起作用。我试图完成的是从 mysql 格式 Y-m-d 加载日期对象并将其转换为 d.m.Y 并将格式为 d.m.Y 的日期对象写入 mysql 格式Y-m-d。我不断收到 "delimiter not found" 或 "format error" 等错误
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');
}
您应该使用 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();
}