Laravel-将日期存储在MySQL数据库中的格式日期

问题描述 投票:0回答:2

我正在使用Laravel,我必须获取一些日期并将其存储在MySQL数据库中。

当我创建这样的日期时:

$date_sol = Carbon::createFromFormat("Y-m-d H:i:s","2020-12-10 01:00:00");

日期已正确存储在数据库中。但是,我必须从输入中获取日期。

我正在尝试获取日期,然后像这样格式化它:

$novaData = $request->input('solicitacao_data') . ' 15:16:17';
        $sol->data = Carbon::parse($novaData)->format("Y-m-d H:i:s");

但是,我得到了错误:

DateTime :: __ construct():无法解析时间字符串(28/03/202015:16:17)在位置0(2):意外字符

错误在行[[$ sol-> data = Carbon :: parse($ novaData)-> format(“ Y-m-d H:i:s”);

如何正确进行格式转换?我是使用Laravel的新手。我不确定。
php mysql laravel php-carbon
2个回答
1
投票
类似日期格式为Y-m-d,请尝试此

Carbon::createFromFormat('Y-m-d', '2020-02-22')->toDateTimeString();

输出将采用(Y-m-d H:i:s)格式

"2020-02-22 21:05:13"


0
投票
$novaData = $request->input('solicitacao_data'). ' 15:16:17';

从这里开始,最简单的方法是将字符串转换为时间戳。可以通过以下方式实现:

$time = strtotime($novaData);

现在,您可以使用Carbon来以所需的方式设置日期格式:

$sol->data = Carbon::createFromTimestamp($time)->format("Y-m-d H:i:s");

© www.soinside.com 2019 - 2024. All rights reserved.