首页 > 解决方案 > 意外数据发现碳?

问题描述

我有传入的字符串日期:

$date = '09.04.1981';

我尝试在 DATE(mysql)中格式化这个日期,所以我这样做:

return Carbon::createFromFormat('Y-m-d', $date); 

它给我一个例外:

"发现意外数据。\r\n发现意外数据。\r\n尾随数据"

标签: laravellaravel-5php-carbon

解决方案


碳是这样挑剔的。该字段当前是在模型中设置为日期,还是这样转换?这有时会产生此错误。这是可能相关的文档部分:

当一列被视为日期时,您可以将其值设置为 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')


推荐阅读