簡體   English   中英

如何使用laravel(5.8)Carbon將datetimepicker日期(引導程序4)格式16/07/2019 10:00轉換為mysql格式2019-07-16 10:00

[英]how to convert datetimepicker date (bootstrap 4) format 16/07/2019 10:00 to mysql format 2019-07-16 10:00 with laravel (5.8) Carbon

你好朋友,我對日期暫停有問題..在我看來,我有一個(bootstrap 4)的datetimepicker,格式為12/06/2019 12:00:00,我需要將其傳遞給接受的格式mysql 2019-06-12 12:00:00

嘗試從js做到這一點,但沒有成功

 $(function () { $('#startdate').datetimepicker({ useCurrent: false, format: 'Y-MM-D H:mm', autoclose:true, minDate: moment() }); 

這就是我從控制器嘗試的方式,但是它給了我一個錯誤:(

$promociones->fecha_inicio = Carbon::createFromFormat('Y-m-d H:i',$request->fecha_inicio)->toDateTimeString();
    $promociones->fecha_fin = Carbon::createFromFormat('Y-m-d H:i',$request->fecha_fin)->toDateTimeString();

錯誤 錯誤

只是嘗試使用這個

\\Carbon\\Carbon::parse($request->fecha_inicio); Carbon::parse($request->fecha_inicio);

您需要將傳入格式與Carbon::createFromFormat()匹配,而不是傳出格式。

Carbon::createFromFormat('d/m/Y H:i','16/07/2019 10:00')->toDateTimeString();

由於沒有第16個月,我假設前幾位是基於標題的天數。 12/06/2019 12:00:00無法確定。

編輯(時區問題)

由於您說時區是在config/app.php設置的,因此也可以將時區作為第三個參數傳遞:

$date = Carbon::createFromFormat('d/m/Y H:i','16/07/2019 21:37','America/El_Salvador')->toDateTimeString();

另外,如果您最近對配置進行了更改,則可能需要運行:

php artisan config:clear

列出時區: https//www.php.net/manual/en/timezones.php

$promociones->fecha_inicio = Carbon::createFromFormat('Y-m-d H:i',$request->fecha_inicio)->toDateTimeString();
$promociones->fecha_fin = Carbon::createFromFormat('Y-m-d H:i',$request->fecha_fin)->toDateTimeString();

在“ config / app.php”中,以這種方式設置時區:'timezone'=>'...'

例如:

'timezone' => 'America/Guatemala'

謝謝

我不得不進行大量調查,並且反復試驗,但是我設法解決了我的問題……非常感謝所有幫助我提供解決方案想法的人。 感謝您的幫助,它對解決我的問題大有幫助。

我開始修復datetimepicker,因此

$('#startdate').datetimepicker({
        useCurrent: false,
        minDate: moment()
    });
    $('#enddate').datetimepicker({
        useCurrent: false,
        minDate: moment()
    });

我必須刪除我給他的格式....在那之后,如一些建議給我的那樣傳遞給控制器​​...傳遞我收到的輸入的格式為d / m / YH:m之后,我通過了我所在國家的時區(如果存在日期問題),那么在我的情況下,我只需要傳遞要將其保存到數據庫中的格式,默認情況下,mysql接受Ymd H:i ...和准備解決問題

$promociones->fecha_inicio = Carbon::createFromFormat('d/m/Y H:i',$request->fecha_inicio,'America/El_Salvador')->format('Y-m-d H:i');
    $promociones->fecha_fin = Carbon::createFromFormat('d/m/Y H:i',$request->fecha_fin,'America/El_Salvador')->format('Y-m-d H:i');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM