PHP date_default_timezone_set()設(shè)置時(shí)區(qū)操作實(shí)例分析
本文實(shí)例講述了PHP date_default_timezone_set()設(shè)置時(shí)區(qū)操作。分享給大家供大家參考,具體如下:
<?phpecho function_exists(date_default_timezone_set).'<br>';//在這他總是返回1,這函數(shù)是判斷這里面的字符是不是一個(gè)定義了的函數(shù)名echo date(’Y-m-d H:i:s’).'<br>';//默認(rèn)時(shí)區(qū)的時(shí)間echo date_default_timezone_set('Etc/GMT').'<br>';//這是格林威治標(biāo)準(zhǔn)時(shí)間,得到的時(shí)間和默認(rèn)時(shí)區(qū)是一樣的echo date(’Y-m-d H:i:s’).'<br>';echo date_default_timezone_set('Etc/GMT+8').'<br>';//這里比林威治標(biāo)準(zhǔn)時(shí)間慢8小時(shí)echo date(’Y-m-d H:i:s’).'<br>';echo date_default_timezone_set('Etc/GMT-8').'<br>';//由上一個(gè)不能難想像,我們比那快8小時(shí)所以減8echo date(’Y-m-d H:i:s’).'<br>';echo date_default_timezone_set(’PRC’).'<br>'; //設(shè)置中國時(shí)區(qū)echo date(’Y-m-d H:i:s’).'<br>';//中國標(biāo)準(zhǔn)時(shí)間?>
輸出
12009-05-15 02:20:42 //默認(rèn)時(shí)區(qū)時(shí)間12009-05-15 02:20:42 //('Etc/GMT') 格林威治標(biāo)準(zhǔn)時(shí)間12009-05-14 18:20:42 //('Etc/GMT+8') 比林威治標(biāo)準(zhǔn)時(shí)間慢8小時(shí)12009-05-15 10:20:42 //('Etc/GMT-8') 比林威治標(biāo)準(zhǔn)時(shí)間快8小時(shí),是我們的北京時(shí)間12009-05-15 10:20:42 //(’PRC’) 中國標(biāo)準(zhǔn)時(shí)間
之前有一個(gè)遺留問題,就是echo date('y-m-d h:i:s',time())回來的時(shí)間總是與實(shí)際時(shí)間對(duì)不上,今天終于在網(wǎng)上找到了原因和解決方法,分享如下:
我補(bǔ)充一點(diǎn),我按照下面提示的方法修改php.ini找不到date.timezone 這行,是不是就沒辦法了呢,當(dāng)然不是啦,哈哈沒有的話就自己加嘛,自己動(dòng)手豐衣足食。我加了這樣一句date.timezone = 'PRC',問題就搞定了,高興一下.
從php5.1.0開始,php.ini里加入了date.timezone這個(gè)選項(xiàng),默認(rèn)情況下是關(guān)閉的
也就是顯示的時(shí)間(無論用什么php命令)都是格林威治標(biāo)準(zhǔn)時(shí)間
和我們的時(shí)間(北京時(shí)間)差了正好8個(gè)小時(shí),有以下3中方法可以恢復(fù)正常的時(shí)間。
1,最簡單的方法就是不要用php5.1以上的版本
2,如果一定要用,而且不能修改php.ini,則需要在關(guān)于時(shí)間的初始化的語句的上面加上 date_default_timezone_set (XXX);cp無此問題
3,一勞永逸,僅限能修改php.ini。打開php.ini查找date.timezone 去掉前面的分號(hào)= 后面加XXX,重啟http服務(wù)(如apache2或iis等)即可
關(guān)于XXX,大陸內(nèi)地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次為重慶,上海,烏魯木齊)港臺(tái)地區(qū)可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次為澳門,香港,臺(tái)北)還有新加坡:Asia/Singapore老外好像把北京漏調(diào)了其他可用的值是:Etc/GMT-8 ,Singapore ,Hongkong ,PRCPRC是什么?PRC是中華人民共和國啊-_----------------------------------------------------------------------------------------------------------------------
解決方式:
在頁頭使用date_default_timezone_set()設(shè)置我的默認(rèn)時(shí)區(qū)為北京時(shí)間
date_default_timezone_set(’PRC’);echo date(’Y-m-d H:i:s’);
時(shí)間和服務(wù)器當(dāng)前時(shí)間一樣了!!祝賀之
附date_default_timezone_set用法如下
--------------------------------date_default_timezone_set
(PHP 5 >= 5.1.0RC1)date_default_timezone_set -- 設(shè)定用于一個(gè)腳本中所有日期時(shí)間函數(shù)的默認(rèn)時(shí)區(qū)說明bool date_default_timezone_set ( string timezone_identifier )
date_default_timezone_set() 設(shè)定用于所有日期時(shí)間函數(shù)的默認(rèn)時(shí)區(qū)。
注: 自 PHP 5.1.0 起(此版本日期時(shí)間函數(shù)被重寫了),如果時(shí)區(qū)不合法則每個(gè)對(duì)日期時(shí)間函數(shù)的調(diào)用都會(huì)產(chǎn)生一條 E_NOTICE 級(jí)別的錯(cuò)誤信息。
參數(shù)
timezone_identifier
時(shí)區(qū)標(biāo)識(shí)符,例如 UTC 或 Europe/Lisbon
返回值本函數(shù)永遠(yuǎn)返回 TRUE(即使 timezone_identifier 參數(shù)不合法)。
------------------------------------------------------------------------------------------
再附上時(shí)區(qū)標(biāo)識(shí)符:
CETCST6CDTCubaEETEgyptEireESTEST5EDTEtc/GMTEtc/GMT+0Etc/GMT+1Etc/GMT+10Etc/GMT+11Etc/GMT+12Etc/GMT+2Etc/GMT+3Etc/GMT+4Etc/GMT+5Etc/GMT+6Etc/GMT+7Etc/GMT+8Etc/GMT+9Etc/GMT-0Etc/GMT-1Etc/GMT-10Etc/GMT-11Etc/GMT-12Etc/GMT-13Etc/GMT-14Etc/GMT-2Etc/GMT-3Etc/GMT-4Etc/GMT-5Etc/GMT-6Etc/GMT-7Etc/GMT-8Etc/GMT-9Etc/GMT0Etc/GreenwichEtc/UCTEtc/UniversalEtc/UTCEtc/ZuluFactoryGBGB-EireGMTGMT+0GMT-0GMT0GreenwichHongkongHSTIcelandIranIsraelJamaicaJapanKwajaleinLibyaMETMSTMST7MDTNavajoNZNZ-CHATPolandPortugalPRCPST8PDTROCROKSingaporeTurkeyUCTUniversalUTCW-SUWET
PS:這里再為大家推薦幾款時(shí)間及日期相關(guān)工具供大家參考:
在線日期/天數(shù)計(jì)算器:http://tools.jb51.net/jisuanqi/date_jisuanqi
在線日期計(jì)算器/相差天數(shù)計(jì)算器:http://tools.jb51.net/jisuanqi/datecalc
在線日期天數(shù)差計(jì)算器:http://tools.jb51.net/jisuanqi/onlinedatejsq
Unix時(shí)間戳(timestamp)轉(zhuǎn)換工具:http://tools.jb51.net/code/unixtime
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php日期與時(shí)間用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章:
1. PHP session反序列化漏洞超詳細(xì)講解2. 得到XML文檔大小的方法3. ASP基礎(chǔ)知識(shí)Command對(duì)象講解4. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)5. PHP循環(huán)與分支知識(shí)點(diǎn)梳理6. ASP實(shí)現(xiàn)加法驗(yàn)證碼7. 詳細(xì)分析css float 屬性以及position:absolute 的區(qū)別8. PHP設(shè)計(jì)模式中工廠模式深入詳解9. jsp+servlet簡單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))10. CSS可以做的幾個(gè)令你嘆為觀止的實(shí)例分享
