0

私はこのテーブルを持っています

Name                       Birth_Date            Register_Date
---------------------------------------------------------------
Ali                       1990-03-22             2010-03-1 15:1:42
Ali1                      1991-07-18             2010-03-2 12:44:2

これらの値を挿入するときに、Birth_Dateを「1990-03-22」などの文字列として挿入し、Register_Date に「NOW()」を使用しまし

NOW()datetimeは、MySql サーバーに従って現在の値を生成します。

現在の日付とRegister_Date (彼が登録してから経過した時間) の間の時間を取得しようとすると、次を使用します。

SELECT YEAR(CURDATE())-YEAR(register_date) ...

PHP でそれを行うには、現在の日付を取得する必要があると思いますdate('Y-m-d H:i:s')

私の質問は、MySql または PHP を介して日付の差 (日付と今日の間) を計算することに違いはありますか?

現在、私のローカルホスト (XAMPP) では同じ日付が生成さCURDATE()date(..)ますが、私の Web サイトがオンラインになると、他のユーザーに対して同じ日付が生成されますか?

4

2 に答える 2

1

mysql と PHP サーバーの両方が同じタイムゾーンで動作していて、クロックが適切に同期されている場合、問題は発生しません。

于 2013-03-29T16:48:41.997 に答える
0

PHP Web サイトと DB を同じサーバーにアップロードする場合は問題ないと思いますが、別のサーバーを使用すると時間の問題が発生する可能性があります。

この問題を回避するには、どのサーバーからでも正しい時刻を取得できるように、タイム ゾーンを使用して時刻を保存することをお勧めします。

于 2013-03-29T16:57:14.780 に答える