私は自分のサイトのユーザーログインに日付を格納しようと考えていますが、最も論理的な解決方法は何か分かりません。MySQL:サーバーのタイムゾーンまたはユーザーのタイムゾーンを維持しますか?
最初は、サーバーのタイムゾーンを使用して、サーバーマシンの日付とユーザーのマシンの日付の間の差分操作を使用して管理しますが、タイムゾーンとPHPクラスの日付を使用してdirecltyを変更することも考えました。
<?php
// my server has for example America/New_York timezone
$user_timezone = "Europe/Rome";
date_default_timezone_set ($user_timezone);
$date = date ('Y-m-d H:i:s');
$sql = "UPDATE users SET user_last_modify = '$date', user_timezone = '$user_timezone' WHERE user_id = 'some id' LIMIT 1;";
$res = mysql_query ($sql);
?>
私の質問は、最善の解決策は、サーバーのタイムゾーンを維持するか、ユーザーのタイムゾーンを使用することですか?
ユーザーのタイムゾーンを使用する場合は、私の例のようにタイムゾーン名を保存する必要がありますか?
UTCはほとんどのものを簡素化できます。特にDSTスイッチ –
+1ですが、サーバータイムゾーン上のUTCではさらにそうです。後でサーバーを移動したい場合や、世界中に複数のサーバーがある場合はどうなりますか? –
おかげさしで助けてくれてありがとうございます。また、あなたはoffestsのrespecitveを持つUTCテーブルについて知っていますか? -1100、-1200、-1300など – vitto