短視頻PHP源碼關於ThinkPHP設置時區功能介紹

一、php開發中不同國家或地區的服務器時間不一致的原因大致如下:
1.如果服務器分佈在不同的地區或者國家,存在有些應用所在的服務器和訪問的區域間隔較大,導致服務器時間不準確。
2.不同的時區,會影響 date(‘Y-m-d H:i:s’, time()) 或類似函數的值。
3.對於相同的時間戳,如果時區不同,得到的日期時間字符串也會不同。
4.可以通過設置php默認時區的方法來處理。

二、修改時區的位置大致如下:
1.在PHP.INI配置文件中設置時區:文件位置/usr/local/php/etc/php.ini
date.timezone = PRC
2.在代碼中設置時區:
2-1.文件位置:/api/public/init.php

date_default_timezone_set('Asia/Phnom_Penh')//必寫:柬埔寨時區

常用時區如下:

a). date_default_timezone_set('Asia/Shanghai');//'Asia/Shanghai'   亞洲/上海

b) date_default_timezone_set('Asia/Chongqing');//其中Asia/Chongqing'爲“亞洲/重慶”

c) date_default_timezone_set('PRC');//其中PRC爲“中華人民共和國”

d) ini_set('date.timezone','Etc/GMT-8');

e) ini_set('date.timezone','PRC');

f) ini_set('date.timezone','Asia/Shanghai');

d) ini_set('date.timezone','Asia/Chongqing');

經過多次測試使用:建議此處使用date_default_timezone_set來設置時區,效果明顯。
2-2. 文件位置:/application/Common/Conf/config.php

 'DEFAULT_TIMEZONE'=>'Asia/Phnom_Penh',//時區設置:柬埔寨時區

3.修改服務器電腦時間設置

三、以上代碼中函數通用註解:
1.date_default_timezone_set(timezone) 函數設置腳本中所有日期/時間函數使用的默認時區。
參數:timezone:必需。規定要使用的時區,比如 “UTC” 或 “Europe/Paris”。
合法時區的列表: http://www.php.net/manual/zh/timezones.php
2. ini_set用來設置php.ini的值,在函數執行的時候生效,腳本結束後,設置失效。
函數格式:string ini_set(string $varname, string $newvalue)

至此,所有修改時區的地方設置完成,實現thinkphp服務器時間保持一致。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章