アクティビティ エントリを MySQL テーブルに保存しています。テーブルにはタイムスタンプ タイプの date_created フィールドがあり、PHP を使用して、GMT に基づいてアクティビティ エントリを挿入します。
$timestamp = gmdate("Y-m-d H:i:s", time());
これはうまくいきます。私のクライアントでは、GMT+2 を使用しています。ここで 16:00 にエントリを挿入すると、MySQL に 14:00 として保存されます。これは予想通りだと思います。じぶんの
ここで、過去 1 時間以内に MySQL からアクティビティ エントリの数を取得したいと考えています。次のクエリを使用しています。
SELECT COUNT(id) as cnt FROM karmalog WHERE user_id = ' 89' AND event='IMG_UPD'
AND date_created > DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 1 HOUR)
CURRENT_TIMESTAMP は、GMT+2 に設定された SYSTEM に設定された MySQL タイムゾーン設定を使用するため、これは何も返しません。私が探しているのは MySQL の GMT_CURRENTTIMESTAMP だと思いますが、そのようなものはありますか?