1

PostgreSQL にタイムゾーン フィールドを持つタイムスタンプがあります。このフィールドを更新するときは、次のようなものを使用します。

$date = date('Y-m-d H:i:s');

SQL は正常に機能しますが、保存された日付は、タイムゾーンの日付を含む従来のタイムスタンプとは少し異なるようです。

Example:

Default value set to "now()":
date 2009-04-06 14:39:53.662522+02

Update with a date set in php:
$date = date('Y-m-d H:i:s');
date 2009-04-06 14:39:53+02

更新時に削除される数値はおそらくミリ秒ですが、よくわかりません。PHPで同じ形式の日付を取得する手段があるかどうか知りたいですか?

4

2 に答える 2

1

タイムスタンプの 1 秒の解像度のみが必要な場合は、それに応じてデータベースを設計する必要があります。デフォルトの解像度は 1 秒よりも優れているためです。

たとえば、次の列定義を使用します。

last_access_time timestamp with time zone not null
    default date_trunc('second',now())
    constraint last_access_time_full_second check (
        date_trunc('second',last_access_time)=last_access_time
    )
于 2009-04-07T08:13:20.933 に答える
0

microtime()PHP関数を使用して、マイクロ秒を取得できます。

于 2009-04-06T20:48:32.343 に答える