我有传入的字符串日期:
$date = '09.04.1981';
我尝试在DATE(mysql)中格式化这个日期,所以我这样做:
return Carbon::createFromFormat('Y-m-d', $date);
它给我一个例外:
“发现了意外的数据。\ r \ n发现了意外的数据。\ r \ n \ n \ n跟踪数据”
碳像这样挑剔。该字段当前是在模型中设置为日期,还是按此类型进行转换?这有时会产生此错误。这是可能涉及的doc部分:
当列被视为日期时,您可以将其值设置为UNIX时间戳,日期字符串(Ymd),日期时间字符串,当然还有DateTime / Carbon实例,并且日期值将自动正确地存储在数据库中:
根据你的问题,不确定这是否会走得那么远。您也可以在末尾添加格式进行测试。 IE
return Carbon::createFromFormat('d.m.Y', $date)->format('your format of choice')
此外,根据评论,检查格式是否符合您的要求 - 如果格式错误,它将提供太多信息并触发上述错误。确保你在上面的方法中有('d.m.y', $date)
。
如果您想转换,请尝试:Carbon::parse($date)->format('Y-m-d')