phpタイムゾーン設定方法まとめ(回転)

3608 ワード

PHPコードの時間判断文に問題があり、問題はPHPのタイムゾーン設定で、PHPが取った時間はデフォルトでグリニッジ標準時間なので、北京時間と8時間差があります.原因を見つけた後、ネット上でPHPに関するタイムゾーンの設定方法をいくつか検索した:1、phpを修正する.ini、php.iniでdataが見つかりました.timezone=その前を取り除く;を選択し、dataを設定します.timezone = “Asia/Shanghai”;できます.2、プログラムPHP 5以上のバージョンのプログラムコードに関数ini_を使用するset('date.timezone','Asia/Shanghai');またはdate_default_timezone_set(‘Asia/Shanghai'); 
よく使われるタイムゾーン識別子の説明:Asia/Shhanghai–上海Asia/Chongqing–重慶Asia/Urumqi–ウルムチAsia/Hong_Kong–香港Asia/Macao–マカオAsia/Taipei–台北Asia/singapore–シンガポール関数のタイムゾーン設定方法:
<?php 
function_exists(date_default_timezone_set);//       1,                         
date_default_timezone_set("Etc/GMT");//          ,              
date_default_timezone_set("Etc/GMT+8");//           8   
date_default_timezone_set("Etc/GMT-8");//           8   
date_default_timezone_set('PRC'); //        www.jbxue.com
?>

関数ini_set()設定タイムゾーン:ファイルの先頭にini_を追加できますset('date.timezone','Asia/Shanghai');//'Asia/Shanghai'は上海時間区のためにphpを手動で修正した.ini設定phpを開くdateを見つける.timezone="PRC"前のセミコロンを消して、なければ手動で追加!PHP 5を装着すると、このような問題が発見されます.
$atime=date("Y-m-d H:i:s"); 
echo $atime; 
?>

出力:2006-05-16 06:36:06今何时ですか./私のは14:36です.これはどうしてつまんでいますか.なぜなら、もしあなたがプログラムやプロファイルにサーバーのローカルタイムゾーンを設定しなければPHPが取った時間はグリニッジ標準時間なので、あなたの現地時間とグリニッジ標準時間と北京時間の差が8時間ぐらいあるので、私たちはどのように時間誤差を避けることができますか?解決策を見てみましょう.ヘッダーでdateを使用します.default_timezone_set()私のデフォルトタイムゾーンを北京時間に設定
<? 
date_default_timezone_set('PRC'); 
echo date('Y-m-d H:i:s'); 
?>

時間はサーバーの現在の時間と同じです!追加date_default_timezone_set用法は以下の通りである:-----------------------------------------------------------------------------------------------------------------------date_default_timezone_set (PHP 5 >= 5.1.0RC1) date_default_timezone_set--スクリプト内のすべての日付時間関数に使用するデフォルトのタイムゾーン説明bool date_を設定します.default_timezone_set ( string timezone_identifier ) date_default_timezone_set()は、すべての日時関数に使用するデフォルトのタイムゾーンを設定します.注意:PHP 5.1.0から(このバージョンでは日付時間関数が書き換えられています)、タイムゾーンが規則に合わない場合、日付時間関数の呼び出しごとにE_が生成されます.NOTICEレベルのエラーメッセージ.パラメータtimezone_Identifierタイムゾーン識別子、例えばUTCまたはEurope/Lisbon戻り値この関数は、timezone_identifierパラメータが正当でない場合でも、TRUEに永遠に戻ります.-----------------------------------------------------------------------------------------------------------------------------------------------义齿timezone値date.timezone=PRCにPHP 5を装着すると、このような問題に気づきます
$atime=date("Y-m-d H:i:s"); 
echo $atime; 
?>

出力:2006-05-16 06:36:06今何时ですか./私のは14:36です.これはどうしてつまんでいますか.なぜなら、もしあなたがプログラムやプロファイルにサーバーのローカルタイムゾーンを設定しなければPHPが取った時間はグリニッジ標準時間なので、あなたの現地時間とグリニッジ標準時間と北京時間の差が8時間ぐらいあるので、私たちはどのように時間誤差を避けることができますか?解決策を見てみましょう.ヘッダーでdateを使用します.default_timezone_set()私のデフォルトタイムゾーンを北京時間に設定
<? 
date_default_timezone_set('PRC'); 
echo date('Y-m-d H:i:s'); 
?>

時間はサーバーの現在の時間と同じです!追加date_default_timezone_setの使い方は次の通りです:-------------------------------date_default_timezone_set (PHP 5 >= 5.1.0RC1) date_default_timezone_set--スクリプト内のすべての日付時間関数に使用するデフォルトのタイムゾーン説明bool date_を設定します.default_timezone_set ( string timezone_identifier ) date_default_timezone_set()は、すべての日時関数に使用するデフォルトのタイムゾーンを設定します.注意:PHP 5.1.0から(このバージョンでは日付時間関数が書き換えられています)、タイムゾーンが規則に合わない場合、日付時間関数の呼び出しごとにE_が生成されます.NOTICEレベルのエラーメッセージ.パラメータtimezone_Identifierタイムゾーン識別子、例えばUTCまたはEurope/Lisbon戻り値この関数は、timezone_identifierパラメータが正当でない場合でも、TRUEに永遠に戻ります.---------------------------------------------またはphpを修正する.义齿timezone値
date.timezone = PRC
出典参考:http://www.jbxue.com/article/5783.html