php中跟時間有關的處理(時區設定,計算時間差,獲取系統當前時間)
阿新 • • 發佈:2019-01-30
1、修改時區背景 :儲存到Navicat中的時間和本地系統時間相差8小時原因:在app/config下的app.php中有一行['timezone' => 'UTC',}規定的是時區預設是UTC ,即協調世界時,又稱世界統一時間、世界標準時間、國際協調時間。]規定的然而:中國大陸、中國香港、中國澳門、中國臺灣、蒙古國、新加坡、馬來西亞、菲律賓、西澳大利亞州的時間與UTC的時差均為+8,也就是UTC+8。解決方法:將app/config/app.php檔案中的'timezone' => 'UTC',改為'timezone' => env('TIMEZONE','UTC'),即讀取.env檔案裡的配置同時在.env檔案中加入這一行TIMEZONE=Asia/Shanghai或者'timezone' =>'PRC', PRC(稱,北京時區)。2、獲取系統當前時間date("Y-m-d H:i:s")3、獲取系統當前時間戳strtotime ("now")4、計算時間差$diff = strtotime ("now")-strtotime($data);$duration = $diff/(60); //得到的時間差是以分鐘為單位$duration = $diff/(60*60); //得到的時間差是以小時為單位$duration = $diff/(60*60*24); //得到的時間差是以天為單位
5、時間戳和日期時間相互轉換
時間戳轉換成日期:
date("Y-m-d H:i:s",time()),"Y-m-d H:i:s"是轉換後的日期格式,time()是獲得當前時間的時間戳。
如果是date("Y-m-d H:i:s",time()),則小時分秒一起顯示;
如果是date("Y-m-d ", time()),只顯示年月日。
日期轉換成時間戳:strtotime
如:strtotime("today");