php差8小時
① 求助:php的time()和date()取出來的時間都是差了8小時
<?php
date_default_timezone_set('PRC');
echodate('Y-m-dH:i:s');
試試這樣對不對,如果對的話說明設置時區的代碼可能跟調用時間的代碼不在一起。比如設置時區的代碼在一個包含文件里,調用date函數的代碼在另一個文件,關鍵是這個文件沒有引用設置時區的代碼。
② PHP相差8小時
直接在php頁面上加date_default_timezone_set('PRC');//此句用於消除時間差
③ PHP代碼獲得的當前時間慢8小時
$riqi=time()+8*60*60; 直接這樣寫就可以了!
從php5.1.0開始,php.ini里加入了date.timezone這個選項,默認情況下是關閉的
也就是顯示的時間(無論用什麼php命令)都是格林威治標准時間
和我們的時間(北京時間)差了正好8個小時
修改php.ini打開php.ini查找date.timezone 去掉前面的分號
= 後面加XXX,重啟http服務(如apache2或iis等)即可
④ php 中的時間為什麼慢8個小時
從php5.1.0開始,php.ini里加入了date.timezone這個選項,默認情況下是關閉的 。
也就是顯示的時間(無論用什麼php命令)都是格林威治標准時間
和我們的時間(北京時間)差了正好8個小時,有以下3中方法可以恢復正常的時間。
1,最簡單的方法就是不要用php5.1以上的版本
2,如果一定要用,而且不能修改php.ini,則需要在關於時間的初始化的語句的
上面加上 date_default_timezone_set (XXX);
3,一勞永逸,僅限能修改php.ini。打開php.ini查找date.timezone 去掉前面的分號
= 後面加XXX,重啟http服務(如apache2或iis等)即可
關於XXX,大陸內地可用的值是:Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次為重慶,上海,烏魯木齊)
港台地區可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次為澳門,香港,台北)
還有新加坡:Asia/Singapore
老外好像把北京漏調了
其他可用的值是:Etc/GMT-8 ,Singapore ,Hongkong ,PRC
PRC是什麼?PRC是中華人民共和國啊-_-
以上都是我從php官方說明檔里整理出來的GMT-8下面的地區,可能會有遺漏
⑤ PHP為什麼時差8小時
CLASS TIME{function get_time()
//獲取當前的系統時間
{
date_default_timezone_set(PRC);
$this->nowtime = date('Y-m-d H:i:s');
return $this->nowtime;
}}$time = new TIME();$Now = $time->get_time();echo $Now.'<br/>';
⑥ 為什麼PHP顯示的時間與伺服器上時間差8小時
1、修改PHP.ini這個文件
找到date.timezone這行,去掉前面的分號,改成:
date.timezone=Asia/Shanghai
2、修改 .htaccess文件
修改.htaccess文件有兩種辦法,下面的兩條語句只要有一條即可
php_valuedate.timezoneAsia/Shanghai
SetEnvTZAsia/Shanghai
3、修改PHP代碼
也是下面的兩條語句只要其中的一句即可
date_default_timezone_set('Asia/Shanghai');
ini_set('date.timezone','Asia/Shanghai');
⑦ php date.timezone = Asia/Shanghai ,設置 了,為什麼還是差8個小時
差了8個小時,應該是配置沒有生效。
web目錄下加一個i.php 輸出一下phpinfo() 看裡面實際用到的php.ini 跟你改那個是否是同一個
如果是同一個文件,確保相關的應用重啟過以載入新配置,比如:apache 或 php-fpm 具體看你的伺服器配置,實在不行,重啟伺服器
還不行就手動檢查 伺服器上的時間,看時間是否有問題
如果沒有許可權修改php.ini 可以在公共代碼的起始位置手動設置時區
date_default_timezone_set('Asia/Shanghai');
PHP支持的所有時區列表
⑧ php環境配置時區設置相差8小時,如何在伺服器上修改
在伺服器打開php配置文件,修改時區
date.timezone = "Asia/Shanghai"
⑨ 為什麼我在php中用date()函數獲取的時間老師與我電腦上顯示的差8小時
這是時區設置的問題
看看PHP手冊的「例子 1. date() 例子」第一行多了一個 時區設置
// 設定要用的默認時區。自 PHP 5.1 可用
date_default_timezone_set(』UTC』);
原來php5.1.開始,php.ini里加入了date.timezone這個選項,默認情況下是關閉的,也就是顯示的時間(無論用什麼php命令)都是格林威治標准時間,和北京時間正好差8個小時。
如何設置可以得到正確的PHP時間。
1、修改php.ini。打開php.ini查找date.timezone 去掉前面的分號= 後面加Asia/Shanghai,重啟apache伺服器即可--缺點就是如果程序
放到別人的伺服器上,不能修改php.ini,那就奈何不得了。
2、在程序中添加時間的初始化的語句的 即:「date_default_timezone_set("Asia/Shanghai"); 」這個可以由程序員任意設置,我的推薦。
時區標識符,大陸內地可用的值是:PRC,Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次為中國,重慶,上海,烏魯木齊) ,Etc/GMT-8,Asia/Harbin
港台地區可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次為澳門,香港,台北)
還有新加坡:Asia/Singapore
這樣就可以實現輸出的是北京時間了更詳細的時區代碼 時區編碼 時區索引碼 timezone_identifier 大家可以在官方網站中查到
⑩ 用phpstorm運行代碼時間總是差了8小時
估計是你的項目配置里設置了時間為UTC,你找下配置表,看能不能找到TIMEZONE