Как исправить неверную дату и время laravel при обновлении даты и времени в mysql - PullRequest
0 голосов
/ 10 июня 2019

В настоящее время у меня есть проблема, связанная с неправильной вставкой даты и времени в мою базу данных, в настоящее время я использую laravel и в своем app.php 'timezone' => 'Canada / Central', сегодня я вставляю заказмое время и дата - 23:23 / 09/06/2019, тогда после того, как я добавлю заказ в базу данных, date_date будет неверным в зависимости от моего времени.

Мое время и дата:

enter image description here

Дата и время заказа, внесенные в базу данных:

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


    ]);

1 Ответ

1 голос
/ 10 июня 2019

Убедитесь, что вы использовали часовой пояс во время установки времени.Еще предпочтительнее использовать Eloquent для вставки данных.

PHP DateTime класс не будет читать настройки laravel автоматически.

Также я бы предложил сохранить часовой пояс в файле .env, чтобы он могбыть доступным через приложение.Вот что вы можете сделать для этого.

  1. Добавить новый ключ APP_TIMEZONE в .env

    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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...