簡體   English   中英

如何在MySQL中更新日期和時間時修復laravel的錯誤日期和時間

[英]How to fix incorrect date and time of laravel when updating date and time in mysql

我目前有關於在數據庫中插入不正確的日期和時間的問題,我目前使用laravel,在我的app.php中, “ timezone” =>“ Canada / Central”,今天我插入了一個時間和日期為11:23 PM的訂單/ 09/06/2019然后將訂單插入數據庫后,根據我的時間,order_date不正確。

我的時間和日期:

在此處輸入圖片說明

訂單日期和時間插入數據庫:

訂購日期

我將與大家分享我的腳本和代碼:

$now = new DateTime();

DB::insert('INSERT INTO order_properties (customer_id,order_ship_address,delivery_status,order_ship_province,order_date,transaction_number) 
        VALUES (?,?,?,?,?,?) ',[

        $hidden_customer_id,
        $hidden_customer_address,
        'Processing',
        Auth::user()->manager_location_assign,
        $now,
        $sessionTransactionNumber


    ]);

確保在設置時間中使用了時區。 否則,首選使用Eloquent進行數據插入。

PHP DateTime類不會自動讀取laravel設置。

我也建議將時區保存在.env文件中,以便可以在整個應用程序中訪問它。 這是您可以為此做的。

  1. 在.env中添加新密鑰APP_TIMEZONE

    APP_TIMEZONE="America/Chicago" //change as per your timezone.

  2. 更新config/app.php以使用.env設置。

    "timezone" = env("APP_TIMEZONE", "UTC");

  3. 您必須使用Carbon圖書館並更改代碼以獲取時區,例如

    $now = Carbon::now(env("APP_TIMEZONE"));

還要確保您的時區Canada/Central必須在php支持列表中可用。

這是PHP支持的時區https://www.w3schools.com/php/php_ref_timezones.asp

暫無
暫無

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

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