1

ユーザーのタイムゾーンを取得しながら、さまざまなことの「時点」を保存してアクセスする方法について少し興味があります。time();ストレージ/データベースのデータとして使用するのはクールでしょう。

たとえば、ブログを更新すると、スタンプは次のように表示され26/01/2000 11:34ますが、ユーザーのタイムゾーンが私のタイムゾーンより 1 時間進んでいる場合は26/01/2000 12:34、もちろん設定によって決定されます。期間限定機能のカウントダウンなどにも役立ちます。ただし、この方法で unix-timestamp をフォーマットする方法がわかりません。ガイダンスとヘルプは素晴らしいでしょう:)。

4

3 に答える 3

2

すべての投稿時間とサーバー時間は、UTC で開始する必要があります。DB から投稿時間を取得し、以下のような方法で DateTime クラスと DateTimeZone クラスを利用します。

$fromDatabase = '2008-08-03 14:52:10';
$datetime = new DateTime($fromDatabase);
$timezone = new DateTimeZone('America/Los_Angeles');
$datetime->setTimeZone($timezone);
echo $datetime->format('Y-m-d H:i:s');

あるいは、Linux で MySQL を使用している場合は、タイムゾーン テーブルをロードして、MySQL クエリで返される日時を調整できます。これを開始する方法については、このページを参照してください - http://dev.mysql.com/doc/refman/5.5/en/time-zone-support.html

于 2013-10-20T03:39:12.917 に答える
1

日付のマニュアルページをお読みください:

PHP マニュアル: 日付

このコードはあなたが求めたことを実行すると思います:

$time = time();
$today = date("m j, Y, G:i a");
echo $today;

タイム ゾーンを変更するには、1 時間を加算または減算します。UNIX タイムスタンプは秒単位であるため、60 秒 x 60 分 = 1 時間、つまり 360 秒です。したがって、次のように 360 秒を追加すると 1 時間進み、減算すると 1 時間戻ります。

$time = time()-360;
于 2013-10-20T02:11:26.610 に答える