Изменить часовой пояс в Lumen или Laravel 5

Я использую Lumen framework. Как я могу изменить Timezone на Europe / Paris CEST?

Я добавил .env в мой .env файл:

 APP_TIMEZONE=Europe/Paris 

Но это не работает. Каков правильный способ обновления часового пояса?

Вы можете установить часовой пояс своего приложения , настроив файл app.php в папке конфигурации .

Чтобы изменить часовой пояс, измените значение часового пояса в файле app.php.

Это написано в этом разделе

 |-------------------------------------------------------------------------- | Application Timezone |-------------------------------------------------------------------------- | | Here you may specify the default timezone for your application, which | will be used by the PHP date and date-time functions. We have gone | ahead and set this to a sensible default for you out of the box. | 

Для меня я использую Asia / Dhaka в качестве часового пояса приложения.

Вот соответствующий синтаксис:

 'timezone' => 'Asia/Dhaka' 

Надеюсь, это поможет.

Попробуйте это: создайте директорию «config» в настройке lumen, а затем создайте файл app.php внутри этого «config». это будет выглядеть так:

 <?php return ['app.timezone' => 'America/Los_Angeles']; 

Затем вы можете получить доступ к его значению где угодно:

 $value = config('app.timezone'); 

Если это не сработает, вы можете добавить эти строки в route.php

 date_default_timezone_set('America/Los_Angeles'); 

Это сработало для меня!

В моем случае (чтение даты из MySQL db в проекте Lumen 5.1) единственным решением, которое работало, является использование Carbon для установки временной зоны переменных:

  $carbonDate = new Carbon($dateFromDBInUTC); $carbonDate->timezone = 'America/New_York'; return $carbonDate->toDayDateTimeString(); // or $carbonDate->toDateTimeString() for ISO format 

Использование DB_TIMEZONE=-05:00 в .env файле почти сработало, но не обрабатывает изменения DST.

Использование APP_TIMEZONE=America/New_York в файле .env не повлияло на значение часового пояса, полученное в Lumen 5.1 webapp из базы данных MySQL, но оно работает в Lavarel 5.1.

Кроме того, Lumen не читал [lumen_project]/config/app.php файла [lumen_project]/config/app.php который я создал (он не жаловался, когда я помещал там синтаксическую ошибку).

Использование date_default_timezone_set тоже не работает.

Использовать часовые пояса php из часовых поясов php вручную

Например, моя i изменилась с значения UTC в config / app.php с

 'timezone' => 'Africa/Nairobi',