Я использую 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',