2011-10-31 20 views
0

夏時間を使用する場所で過去の週末を変更したばかりなので、これに関連するクエリがいくつかあると確信しています。夏時間(DST)、夏時間(DST)のPHPエラーチェック

日付がDSTを使用しているかどうかを判断しようとしています。このため、私は2011年10月30日にDSTを使用しないと仮定しています。スイッチがその日に発生したためです。これは正しいですか?ここで

は、コードは(私は10月30日はDSTを使用しないように期待される)である。

<?php 
echo "Timezone = " . date_default_timezone_get(); 
echo "</br>"; 

$dateOct29='2011-10-29'; 
$dateOct29Timestamp=strtotime($dateOct29,time()); 
$checkDayLightSavingOct29=date('I',$dateOct29Timestamp); 
echo "Date : ".$dateOct29." Timestamp : ".$dateOct29Timestamp." Formatted ('Y-m-d Z T'): ".date('Y-m-d Z T',$dateOct29Timestamp)."</br>"; 
echo "Result of date('I',timestamp) : ". $checkDayLightSavingOct29."</br>"; 

$dateOct30='2011-10-30'; 
$dateOct30Timestamp=strtotime($dateOct30,time()); 
$checkDayLightSavingOct30=date('I',$dateOct30Timestamp); 
echo "Date : ".$dateOct30." Timestamp : ".$dateOct30Timestamp." Formatted ('Y-m-d Z T'): ".date('Y-m-d Z T',$dateOct30Timestamp)."</br>"; 
echo "Result of date('I',timestamp) : ". $checkDayLightSavingOct30."</br>"; 

$dateOct31='2011-10-31'; 
$dateOct31Timestamp=strtotime($dateOct31,time()); 
$checkDayLightSavingOct31=date('I',$dateOct31Timestamp); 
echo "Date : ".$dateOct31." Timestamp : ".$dateOct31Timestamp." Formatted ('Y-m-d Z T'): ".date('Y-m-d Z T',$dateOct31Timestamp)."</br>"; 
echo "Result of date('I',timestamp) : ". $checkDayLightSavingOct31."</br>"; 

$dateNov01='2011-11-01'; 
$dateNov01Timestamp=strtotime($dateNov01,time()); 
$checkDayLightSavingNov01=date('I',$dateNov01Timestamp); 
echo "Date : ".$dateNov01." Timestamp : ".$dateNov01Timestamp." Formatted ('Y-m-d Z T'): ".date('Y-m-d Z T',$dateNov01Timestamp)."</br>"; 
echo "Result of date('I',timestamp) : ". $checkDayLightSavingNov01."</br>"; 


?> 

これは次のように出力されます

タイムゾーン=ヨーロッパ/ダブリン

日:2011-10 -29タイムスタンプ:1319842800フォーマット済み( 'Ymd Z T'):2011-10-29 3600 IST

日付の結果( 'I'、タイムスタンプ):1

日:2011年10月30日のタイムスタンプ:1319929200書式設定( 'はYmd Z T'):日付の2011年10月30日3600 IST

結果( 'I'、タイムスタンプ):1

日: 2011年10月31日のタイムスタンプ:1320019200書式設定( 'はYmd Z T'):日付の2011年10月31日0 GMT

結果( 'I'、タイムスタンプ):0

日:2011-11- 01タイムスタンプ:1320105600フォーマット済み( 'Ymd Z T'):2011-11-01 0 GMT

dの結果ate( 'I'、timestamp):0

答えて

0

10月30日は午前3時までDSTを使用します。あなたの時刻は真夜中であるため、これはDSTの変更前であるため、30日目はDSTとマークされています。時間を午前10時に設定してください。正しい結果が得られるはずです。

+0

超高速応答をお寄せいただきありがとうございます。私たちが読んでいるところでは、集団のアアアが部屋で聞こえました。 –

関連する問題