Home Backend Development PHP Tutorial Lumen timezone time zone setting method

Lumen timezone time zone setting method

Jan 24, 2018 am 11:22 AM
lumen method

When I tried Lumen for the first time, I encountered a problem. The time found from the database was 8 hours slower than the TIMESTAMP time saved in the database. Obviously this is a time zone setting problem. This article will mainly share with you Lumen timezone. Time zone setting method, I hope it can help everyone.

According to the experience of Laravel 4.x and 5.0, you only need to set the 'timezone' parameter to 'PRC' in config/app.php. Find the Lumen config directory in /vendor/laravel /lumen-framework/config path, but there is no timezone parameter option in the parameter options of config/app.php, and it is invalid even if it is added manually.

Then I thought about the .env file of Laravel 5, and found that there is no option for timezone setting in Lumen’s .env file.

Go back to the config directory and look at the settings in config/database.php. The default configuration for mysql is as follows:


'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'  => 'utf8',
 'collation' => 'utf8_unicode_ci',
 'prefix'  => env('DB_PREFIX', ''),
 'timezone' => env('DB_TIMEZONE','+00:00'),
 'strict'  => false,
],
Copy after login

There is one here The timezone setting of the database defaults to +00:00, which is UTC time. Change it to +08:00 to solve the problem. Since the project enabled the .env configuration file, a line

DB_TIMEZONE=+08:00

was finally added to the .env file to solve the database timezone problem.

Although the timezone problem of the database has been solved, the timezone problem of the app has not been solved. Search the lumen project globally to find the place where timezone is used. It is in /vendor/laravel/lumen-framework/src/ The code for initializing the lumen timezone part was found in the Application.php file


/**
* 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'));
 $this->basePath = $basePath;
 $this->bootstrapContainer();
 $this->registerErrorHandling();
}
Copy after login

The .env parameter used in the code is APP_TIMEZONE, and the value is UTC. Here, UTC Change to PRC, or add

APP_TIMEZONE=PRC

lumen php's time zone setting problem in the .env file.

Summary of Lumen time zone settings

Edit .env file to add configuration


APP_TIMEZONE=PRC
DB_TIMEZONE=+08:00
Copy after login

If .env configuration is not enabled file, edit


/vendor/laravel/lumen-framework/config/database.php
/vendor/laravel/lumen-framework/src/Application.php
Copy after login

and modify the APP_TIMEZONE and DB_TIMEZONE parameter values ​​respectively.

Enable .env configuration file

Rename the .env.example file in the Lumen root directory to .env, edit /bootstrap/app.php, and cancel as follows Comments on the line of code
Dotenv::load(__DIR__.'/../');

Addition:

Because lumen uses Greenwich time by default, it needs to be converted to Beijing time.
Add

APP_TIMEZONE=PRC to .env
DB_TIMEZONE=+08:00

The time will be correct

Related recommendations:

A brief discussion on custom dependency injection of lumen framework

System time zone setting of PHP date and time function

Linux PHP MySQL Detailed explanation of time zone setting method_PHP tutorial

The above is the detailed content of Lumen timezone time zone setting method. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to write a novel in the Tomato Free Novel app. Share the tutorial on how to write a novel in Tomato Novel. How to write a novel in the Tomato Free Novel app. Share the tutorial on how to write a novel in Tomato Novel. Mar 28, 2024 pm 12:50 PM

How to write a novel in the Tomato Free Novel app. Share the tutorial on how to write a novel in Tomato Novel.

How to delete WeChat friends? How to delete WeChat friends How to delete WeChat friends? How to delete WeChat friends Mar 04, 2024 am 11:10 AM

How to delete WeChat friends? How to delete WeChat friends

How to enter bios on Colorful motherboard? Teach you two methods How to enter bios on Colorful motherboard? Teach you two methods Mar 13, 2024 pm 06:01 PM

How to enter bios on Colorful motherboard? Teach you two methods

How to recover deleted contacts on WeChat (simple tutorial tells you how to recover deleted contacts) How to recover deleted contacts on WeChat (simple tutorial tells you how to recover deleted contacts) May 01, 2024 pm 12:01 PM

How to recover deleted contacts on WeChat (simple tutorial tells you how to recover deleted contacts)

Summary of methods to obtain administrator rights in Win11 Summary of methods to obtain administrator rights in Win11 Mar 09, 2024 am 08:45 AM

Summary of methods to obtain administrator rights in Win11

Quickly master: How to open two WeChat accounts on Huawei mobile phones revealed! Quickly master: How to open two WeChat accounts on Huawei mobile phones revealed! Mar 23, 2024 am 10:42 AM

Quickly master: How to open two WeChat accounts on Huawei mobile phones revealed!

The secret of hatching mobile dragon eggs is revealed (step by step to teach you how to successfully hatch mobile dragon eggs) The secret of hatching mobile dragon eggs is revealed (step by step to teach you how to successfully hatch mobile dragon eggs) May 04, 2024 pm 06:01 PM

The secret of hatching mobile dragon eggs is revealed (step by step to teach you how to successfully hatch mobile dragon eggs)

Detailed explanation of Oracle version query method Detailed explanation of Oracle version query method Mar 07, 2024 pm 09:21 PM

Detailed explanation of Oracle version query method

See all articles