Lumen timezone 時區設定方法
今天用Lumen 框架寫程式碼時, 也是初次體驗Lumen, 遇到了一個問題, 從資料庫裡查出的時間比資料庫裡保存的TIMESTAMP 時間慢了8個小時, 很明顯這是一個時區設定的問題, 本以為可以在1分鐘內解決的, 但是我錯了
根據Laravel 4.x 和5.0 的經驗, 只需要到config/app.php 中設置下'timezone' 參數為'PRC'就好了, 找到Lumen 的config 目錄, 在/vendor/laravel/lumen-framework/config 路徑下, 但是config/app.php 的參數選項中沒有timezone 參數選項, 手動加上後也是無效的。
然後想到 Laravel 5 的 .env 檔案, 結果發現 Lumen 的 .env 檔案裡也沒有關於 timezone 設定的選項。
又回到config 目錄, 看看config/database.php 中的設定, 關於mysql 的預設設定如下:
'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, ],
DB_TIMEZONE= 08:00## 資料庫 timezone 問題解決。
資料庫的timezone 問題雖然解決了, 但是app 的timezone 問題還沒解決, 全域搜尋lumen 專案, 找用到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=PRClumen php 的時區設定問題解決。
編輯.env 檔案新增設定
APP_TIMEZONE=PRC DB_TIMEZONE=+08:00
若沒啟用.env 設定檔, 編輯
/vendor/laravel/lumen-framework/config/database.php /vendor/laravel/lumen-framework/src/Application.php
#分別修改APP_TIMEZONE 和DB_TIMEZONE 參數值。
啟用.env 設定檔將Lumen 根目錄下的.env.example 檔案重新命名為.env, 編輯/bootstrap/app.php, 取消如下行程式碼的註解
Dotenv::load(__DIR__.'/../');
#補充:
因為lumen預設使用格林尼治時間,需要轉成北京時間。
在.env中加入
APP_TIMEZONE=PRC
這樣時間就正確了
相關推薦:
php nginx 即時輸出的簡單實作方法的講解#PHP註解語法規格與命名規格詳解#################################### ##php語言註釋,單行註解和多行註解的相關內容######################
以上是Lumen timezone 時區設定方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

時區是指地球上一個地區所使用的標準時間。世界上共有24個時區,從UTC-12到UTC+14。在不同時區的國家之間旅行時,需要根據每個國家的時區來調整時間。 PHP內建了一些時間函數,使得可以使用全球任何時區的時間。

隨著行動互聯網的快速發展和用戶需求的變化,訊息推播系統已成為現代應用程式不可或缺的一部分,它能夠實現即時通知、提醒、推廣、社交等功能,為用戶和商業客戶提供更好的體驗和服務。為了滿足這項需求,本文將介紹如何使用PHP框架Lumen開發一個高效率的訊息推播系統,提供及時的推播服務。一、Lumen簡介Lumen是由Laravel框架開發團隊開發的微框架,它是一個

標題:使用time.Unix函數將Unix時間戳轉換為時間格式,並設定時區在Go語言中,我們經常需要將Unix時間戳記轉換為可讀的時間格式,並且往往還需要考慮設定時區的問題。本文將向大家介紹如何使用time套件中的Unix函數來完成這個任務,並且示範如何設定時區。首先,我們要先了解Unix時間戳的意思。 Unix時間戳記是以秒為單位的整數,表示從1970年1月1

linux修改時區不生效的解決方法:1、登入linux系統,進入終端機;2、拷貝設定檔來修改時區;3、透過「hwclock --show」指令查看硬體時鐘,然後設定設定硬體時鐘;4、透過“vim /etc/timezone Asia/Shanghai”修改時區即可。

PHP是一種非常受歡迎的伺服器端程式語言。在使用PHP開發Web應用程式時,我們有時需要在PHP中設定時區。 PHP預設的時區是“UTC(協調世界時)”,這在許多情況下都不是我們想要的時區,因此我們需要在php.ini檔案中更改時區設定。本文將介紹如何在php.ini檔案中變更時區。

朋友們知道騰訊會議預定會議怎麼選擇時區嗎?今天小編就來講解騰訊會議預定會議選擇時區的方法,感興趣的快跟小編一起來看看吧,希望能夠幫助到大家。第一步:進入騰訊會議APP,點選預定會議(如圖)。第二步:選擇會議類型,如常規會議,點選下一步(如圖所示)。第三步:在預定會議頁面,點選時區(如圖)。第四步:選擇時區(如圖)。第五步:設定成功,點選完成(如圖)。

php修改時區的方法:1、在設定檔中設定預設時區為東8區;2、透過程式碼「date_default_timezone_set('Asia/Shanghai');」設定時區;3、在PHP頁麵中設定「date_default_timezone_set(' PRC');」。

PHP中如何使用Lumen框架Lumen是Laravel框架的簡化版本,它專注於快速建立輕量級的微服務和API應用程式。 Lumen是一個開源框架,由TaylorOtwell創建並維護。它以引人入勝的速度和性能聞名。在這篇文章中,我們將介紹如何在PHP中使用Lumen框架。 1.安裝和設定Lumen框架首先,您需要在您的系統中安裝composer工具。 Comp
