可以更改datetime本地输入的格式

qfe3c7zg  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(323)

这个问题在这里已经有答案了

在php中更改日期时间格式(4个答案)
两年前关门了。
注意:这个问题不是重复的,原因是我不仅仅使用php,我的页面确实是用php编写的,但是使用html代码。
我将再次重复一遍,当然我使用php,但我在php文档中使用html;我使用的是laravel框架,我也使用blade,我把上面提到的页面的链接放进去。
在php中更改datetime格式
现在,我继续解释我的问题。
我有一个表单的输入,他的类型是datetime local,输入以这种格式显示日期:
年月日00:00
但在我的数据库中,datetime的格式是:
年-月-日00:00:00
我已经知道这个日期时间格式是关于我的时区配置,但如果可能的话,我想改变格式,直观地保存为该格式,就像在我的数据库。我说的只是日期,不是时间。
我想如果可能的话,我的数据库不会有问题。
如果可能的话,我想使用javascript或在我的函数中更改格式 save() 在我的控制器中,创建一种更改格式的方法。我的数据库在mysql中,我在phpmyadmin中工作。
我也把我的功能 store() 我的控制器。

public function store(Request $request){

    $hours = new HoursNew();

    try {
    /*THE NAME FROM THE INPUTS IN MY FORM, 
    ALSO THE NAMES OF THE FIELDS OF MY TABLE OF MY DATABASE*/ 

        $hours->id = $request->id;
        $hours->time_start = $request->time_start;
        $hours->time_end = $request->time_end;
        $hours->estate_time_id = $request->estate_time_id;
        $hours->court_id = $request->court_id;
        $hours->save();

    } catch (\Illuminate\Database\QueryException $e) {

         Session::flash('error', 'Ups! We have some problems to process your operation');

        return redirect()->route('ListHours.store');

    }

        Session::flash('message', "It's OK");
        return redirect()->route('ListHours.store');

}

注意:对我的数据库不是很重要,但了解它很重要:
秒对于保存到我的数据库不是很重要。

3xiyfsfu

3xiyfsfu1#

用碳来做。
carbon::parse('your date')->todatetimestring()应该可以完成这项工作。
此外,carbon还可以使用如下解析静态方法创建示例:
carbon::createfromformat('format','your data')->todatetimestring()

ig9co6j1

ig9co6j12#

使用strotime函数将datetime输入解析为unix时间戳。
使用日期函数将其转换为数据库格式字符串。
细节: d 月份的第几天,前导零为01到31的两位数字 m 月份的数字表示法,前导零为01到12 Y 一年的完整数字表示,4位数字示例:1999或2003 H 前导零00到23的24小时格式 i 前导零00到59的分钟数 s 秒,前导零00到59
尝试:

// $input is your input datetime string
// $output you insert into Database
$output = date('Y-m-d H:i:s', strtotime($input));

相关问题