Laravel 使用特殊的日期格式
Laravel use special date format
现在我使用 strtotime
函数将德国日期格式 (01.01.2017) 转换为股票 (2017-01-01)。例如我使用 date('Y-m-d', strtotime($birthday))
。现在我想使用简短的德语日期格式并将其转换为股票。例如。 1.1.17 应转换为 2017-01-01。我怎样才能做到这一点?使用 strtotime
功能不起作用(或者我很傻才正确使用它)
另一个问题:如果有人输入 2017 年 1 月 32 日,我如何捕获错误?我只收到调试通知,或者在生产时收到 "Whoops, ..." "error" 消息。相反,制作一些甜蜜的警报消息会很棒。我收到以下错误消息:
DateTime::__construct(): Failed to parse time string (32.10.2016) at position 0 (3): Unexpected character
对于管理 Laravel 日期,您可以使用名为 Carbon 的精美软件包来解决 Carbon::parse("data");
的问题
在这里你可以找到很好的文档。
http://carbon.nesbot.com/docs/
这里是 api 文档 Laravel:
正如 LorenzoBerti 提到的,您可以使用 carbon 来解析您的日期:
$birthday = Carbon::parse($birthday)->format('d.m.y');
注意 format()
方法,这应该会为您提供所需的格式。
你可以用这个。
$date = '1.1.17';
$year = substr($date, -2);
$finalDate= substr($date, 0, -2)."20".$year;
Carbon::createFromFormat('m.d.Y',$finalDate)->format('Y-m-d');
(已更新)。
现在我使用 strtotime
函数将德国日期格式 (01.01.2017) 转换为股票 (2017-01-01)。例如我使用 date('Y-m-d', strtotime($birthday))
。现在我想使用简短的德语日期格式并将其转换为股票。例如。 1.1.17 应转换为 2017-01-01。我怎样才能做到这一点?使用 strtotime
功能不起作用(或者我很傻才正确使用它)
另一个问题:如果有人输入 2017 年 1 月 32 日,我如何捕获错误?我只收到调试通知,或者在生产时收到 "Whoops, ..." "error" 消息。相反,制作一些甜蜜的警报消息会很棒。我收到以下错误消息:
DateTime::__construct(): Failed to parse time string (32.10.2016) at position 0 (3): Unexpected character
对于管理 Laravel 日期,您可以使用名为 Carbon 的精美软件包来解决 Carbon::parse("data");
在这里你可以找到很好的文档。
http://carbon.nesbot.com/docs/ 这里是 api 文档 Laravel:
正如 LorenzoBerti 提到的,您可以使用 carbon 来解析您的日期:
$birthday = Carbon::parse($birthday)->format('d.m.y');
注意 format()
方法,这应该会为您提供所需的格式。
你可以用这个。
$date = '1.1.17';
$year = substr($date, -2);
$finalDate= substr($date, 0, -2)."20".$year;
Carbon::createFromFormat('m.d.Y',$finalDate)->format('Y-m-d');
(已更新)。