Как установить часовой пояс в люмене 5.2?

Я не нашел никакой соответствующей информации (только хитрости) о том, как установить часовой пояс по умолчанию в Lumen 5.2. Есть ли какой-нибудь чистый способ сделать это?

3

Решение

Это довольно легко сделать и показать их страница документации:

Чтобы установить значения конфигурации во время выполнения, передайте массив в конфигурацию
помощник:

config(['app.timezone' => 'America/Chicago']);

В качестве альтернативы, в app/config.php:

'timezone' => 'UTC',
2

Другие решения

В Lumen 5.2 класс Application фактически читает переменную окружения APP_TIMEZONE.

Вы можете легко установить часовой пояс с помощью файла .env, используя или установив переменную окружения на вашем сервере:

APP_TIMEZONE=UTC
12

Ни один из ответов, которые я читал на многих форумах, не решает проблему, потому что в файле /vendor/laravel/lumen-framework/config/database.php есть эта строка:

'mysql' => [
'driver'    => 'mysql',
'host'      => env('DB_HOST', 'localhost'),
'port'      => env('DB_PORT', 3306),
'database'  => env('DB_DATABASE', 'forge'),
'username'  => env('DB_USERNAME', 'forge'),
'password'  => env('DB_PASSWORD', ''),
'charset'   => env('DB_CHARSET', 'utf8'),
'collation' => env('DB_COLLATION', 'utf8_unicode_ci'),
'prefix'    => env('DB_PREFIX', ''),
**'timezone'  => env('DB_TIMEZONE', '+00:00'),**
'strict'    => env('DB_STRICT_MODE', false),
],
6

В config/app.php
Вы можете изменить это

‘часовой пояс’ => ‘UTC’,

1

Просто чтобы возобновить и быть супер ясно (в этом 2018 году):

Все параметры конфигурации для инфраструктуры Lumen хранятся в
файл .env.

В люмен не существует config/app.php файл.


Но также, если мы посмотрим на vendor/laravel/lumen-framework/src/Application.php

/**
* Create a new Lumen application instance.
*
* @param  string|null  $basePath
* @return void
*/
public function __construct($basePath = null)
{
...
date_default_timezone_set(env('APP_TIMEZONE', 'UTC'));
...

ссылка: https://github.com/laravel/lumen-framework/blob/5.6/src/Application.php#L83

Мы видим, что Люмен не возьмет config значение, просто env значение для установки часового пояса.

Так что техника копирования / вставки /laravel/lumen-framework/config directory использовать full "Laravel style" configuration files в люмен не применим в этом случае и никогда не было.

Кроме того: эта техника является старой ссылкой на первую версию Lumen.
ссылка: https://lumen.laravel.com/docs/5.1#configuration-files. (старые документы)

В текущей версии 5.6 Lumen эта подсказка была удалена из документации и, вероятно, была подсказкой, помогающей перейти с Laravel в начальные времена Lumen, но больше не является хорошей практикой. Так что используйте .env файлы всегда.
ссылка: https://lumen.laravel.com/docs/5.6#configuration (новые документы)

0
По вопросам рекламы [email protected]