MySQL データベースに挿入する前に、PHP を使用して日付と時刻をタイムスタンプに変換しています。
私の問題は、PHP の strtotime 関数を使用すると、出力タイムスタンプが実際の時間から 1 時間遅れることです。
たとえば、今日の日付が 07/21/2010 であるとします。次のようなphpコードを使用する場合:
<?php
$my_timestamp = strtotime("07/21/2010");
echo $my_timestamp;
?>
返されるタイムスタンプは、GMT 相当の MINUS 1 時間です。つまり、2010 年 7 月 21 日 00:00:00 GMT ではなく、2010 年 7 月 20 日 23:00:00 GMT に戻ります。
私は英国に住んでいるので、タイムゾーンは GMT です。date_default_timezone_set('Europe/London') を使用してスクリプトでタイムゾーンを宣言し、php.ini ファイルが 'Europe/London' に設定されていることも確認しました。
これはおそらくサマータイムと関係がありますか?すべての日付に 1 時間を追加せずに問題を解決するにはどうすればよいですか?