1. 程式人生 > >Lumen5.3.2 資料庫和app時區問題

Lumen5.3.2 資料庫和app時區問題

資料庫 timezone

資料庫的時區設定可以在 database 檔案中設定,檔案路徑為:

\vendor\laravel\lumen-framework\config\database.php
 'timezone' => env('DB_TIMEZONE', '+00:00')

在這裡有個數據庫的 timezone 設定, 預設 +00:00, 也就是 UTC 時間, 改成 +08:00 問題解決。由於專案啟用了 .env 配置檔案, 所以最終是在 .env 檔案裡添加了一行

DB_TIMEZONE=+08:00

app的timezone

/vendor/laravel/lumen-framework/src/Application.php

 檔案中找到了初始化 lumen timezone 部分的程式碼

/**
 * 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(); }

程式碼中使用的 .env 引數為 APP_TIMEZONE, 值為 UTC, 在這裡將 UTC 改為 PRC, 或者在 .env 檔案裡新增

APP_TIMEZONE=PRC
參考文章:http://blog.csdn.net/butiehua/article/details/51557903