2012-08-02 4 views
11

これは変わったようですが、私はすでにすべてをチェックしていますが、まだ奇妙なことが起こります。date_default_timezone_set( 'UTC')が動作しません

私のPHPスクリプトのタイムゾーンを変更することはできません最初

まず物事:これは私がテストhttp://codepad.org/rpYZ0flAでこれをしようとしたとき正常に動作しているようだ

<?php 
date_default_timezone_set('UTC'); 
echo '<br>'; 
echo date('Y-m-d H:i:s'); 
?> 

:私が何をしたか、このようなものでした。

私のサーバーのタイムゾーンはUTC + 8:00台北に設定されていますが、上記のコードを試してみると実際には機能しません。上記のコードに従わず、サーバーのタイムゾーンに現在のdate_timeが表示されます。なぜこれが起こっている

date/time support     enabled 
"Olson" Timezone Database Version 2012.3 
Timezone Database     internal 
Default timezone      Europe/Berlin 

そして、これは私のサーバーのphp.iniの設定はありますか?これはすでにバグですか?またはserver_setupを間違えてしまった場合、または自分のコードで何かを見逃してしまったでしょうか?

ありがとうございます。

注: 私の環境では、Windows 7Nは、PHP 5.4.4

を使用してVMで実行されているFIX:

私は手動でphp.iniの

+0

あなたはどのPHP版を使用していますか? – Hawili

+1

php 5.4.4、私はVMに何か問題があると思います.. –

+3

http://php.net/manual/en/function.date-default-timezone-set.php – Hawili

答えて

2

タイムゾーン付きのUnixエポック(1970年1月1日00:00:00 GMT)からの秒単位の時間だけを必要とする場合。以下のコードを使用してください:

<?php 
date_default_timezone_set("UTC"); 
time()+date("Z"); 
0

問題なく動作します。疑わしい場合には

、このコードでそれを確認してください:あなたの便宜のために

<?php 
date_default_timezone_set('America/Virgin'); 
echo date('Y-m-d H:i:s T') . "\n"; 
date_default_timezone_set('UCT'); 
echo date('Y-m-d H:i:s T') . "\n"; 

Here is a codepad preview

リターンは、この(更新日時とオフコース)のようになります。それが失敗した場合は、サーバーの設定をダブルチェック...あなたのPHP.iniファイルから始まり、

2017-12-11 03:09:58 AST 
2017-12-11 07:09:58 UCT 

関連する問題