しばらく私はMySQLのNOW()関数を使用してMySQLのDBに時刻/日付を記録していましたが、ホストのタイムゾーン変数がPSTよりも3時間遅れていることが分かりました。私はDATE_SUB(NOW(), INTERVAL 3 HOUR)
を使ってこれを修正しましたが、今は3時間先のタイムスタンプのトンと、正しい時刻を示すすべての将来のタイムスタンプがあります。PHPでタイムスタンプを評価するにはどうすればよいですか?
修正プログラムを作成する前に記録されたタイムスタンプを評価するPHP関数があるので、私の管理ユーティリティに表示されるときにオフセットすることができますか?例えば
:多くの入力形式については
if($timestamp < 2012-02-16 21:57:18) {
$timestamp - 3 hours;
}
'($ timestamp
(あなたのPHP '$タイムスタンプ'はPHPのUNIXタイムスタンプで、MySQLのdatetime文字列ではありません)' –
'UPDATEテーブルSETタイムスタンプ= DATE_SUB(タイムスタンプ、インターバル3時間)WHEREタイムスタンプ<'2012-02-16 21:57:18'データベースの値を再び同期させます。アプリケーションコードでこれを処理したくないのは確かです。 – deceze