2011-06-28 2 views
2

私は推測する問題は、2つの質問のようなものです:私も、容易に比較され、PHPのフォーマットで現在時刻を取得するにはどうすればよいmysqlのタイムスタンプとphpの現在の時刻の違いを取得するにはどうすればよいですか?

  1. 私は、私はMySQLをすることを持っていたらこの形式のタイムスタンプ、2011-06-30 04:33:00、私はPHPの現在の時間と比較する必要があります。

は、事前にそうそんなにありがとう Binny

+0

MySQLクエリの違いが必要なのですか?これはクエリの実行後にPHP処理に必要ですか? –

+0

クエリ実行後のPHP処理 – bzupnick

答えて

2

strtotime($query_result['timestamp'])

この意志1970年1月1日の値からMySQLのタイムスタンプ値を正しい秒に変換します。それでは、違いを得るために2つを減算するだけの問題です。

5

私はあなたがDATETIME列としてそれを保存していると仮定しています。そのため、MySQLの

PHPで次に
SELECT 
    UNIX_TIMESTAMP(`date_column`) AS `timestamp`, 
    ... 
FROM 
    ... 

、中:

$time_diff_in_seconds = time() - $query_result['timestamp'] 

しかし、私はちょうどデータベースがそれをやらせたい:

SELECT 
    TIME_TO_SEC(TIMEDIFF(CURRENT_TIMESTAMP, `date_column`)) AS time_diff, 
    ... 
FROM 
    ... 
+0

実際にTIMESTAMPカラムとして保存しています – bzupnick

+0

@bzupnick:PHPタイムスタンプとMySQL unixタイムスタンプは同じです - Jan 1/1970以降の秒。タイムゾーン/夏時間の詳細が関与しない限り、処理は必要ありません。 –

+0

しかし、タイムスタンプは私に2011年6月30日04:33:00とPHPのタイムスタンプは私に数字の束を与える....私はミリセンドを推測... ....しかし、彼らは同じ形式ではない – bzupnick

0

あなたが確認すべき1つのこと:同じマシンから2回来ていますか?彼らが別のマシンから来ている場合は、タイムゾーンと同期について心配する必要があります。

関連する問題