PHP を開発および理解する過程で、タイムスタンプ (タイムスタンプ) と日付 (日付) はよく使用される概念です。時間データを処理するときは、タイムスタンプを日付に変換するか、日付をタイムスタンプに変換する必要があります。
PHP には、タイムスタンプと日付を簡単に変換するためのさまざまな関数が用意されています。この記事では、PHPのdate()関数の使い方やタイムスタンプとの変換関係について詳しく紹介します。
タイムスタンプは、時間を表す方法を指します。つまり、一定の時点 (通常は 1970 年 1 月 1 日の 00:00) 00 からの時間を表します。 :00 UTC)、それから経過した秒数をカウントします。 PHP では、time() 関数を呼び出すことで、以下に示すように現在の時刻のタイムスタンプを取得できます。
$timestamp = time();
date( ) は、日付の書式設定に使用される PHP 関数を使用して、指定された形式で日付と時刻を出力できます。構文は次のとおりです:
date($format, $timestamp)
その中で、$format は日付出力形式であり、$timestamp はオプションのパラメータであり、フォーマットする必要があるタイムスタンプを表します。タイムスタンプが渡されない場合、現在のタイムスタンプはデフォルトで使用されます。一般的に使用される形式パラメーターの一部を次に示します。
Parameter | Description |
---|---|
Y | 4 桁の年 |
m | 数字の月 (先頭にゼロ付き) |
d | 日 (先頭にゼロ付き) |
時間 (24 時間形式、先頭にゼロ付き) | |
分 (先頭にゼロ付き) | |
秒 (先頭にゼロ付き) ゼロ) | |
曜日 (0 は日曜日、1 は月曜日など) | |
AM または PM (小文字) | |
AM または PM (大文字) |
echo date('Y-m-d H:i:s', 1609459584);
2021-01-01 12:12:12
$timestamp = 1609459584; $datetime = date('Y-m-d H:i:s', $timestamp); echo $datetime;
$datetime = '2021-01-01 12:12:12'; $timestamp = strtotime($datetime); echo $timestamp;
出力結果は次のとおりです:
1609459584
strtotime() 関数の入力時刻は英語の日付形式である必要があることに注意してください。たとえば、上記の例で指定されている時刻は、が「2021- 01-01 12:12:12」の場合、時刻形式が正しくない場合、関数は false を返します。
現地時間date_default_timezone_set('Asia/Shanghai'); echo date('Y-m-d H:i:s');
時間形式パラメータは変更されず、出力の日付と時刻は自動的に東部第 8 地区時間に変換されます:
2022-03-15 15:33:57
使用シナリオも非常に幅広く、たとえば、Web サイトに記事を公開する場合、タイムスタンプを日付に変換したり、人間が判読できる日付をタイムスタンプに変換して比較する必要があります。どのようなシナリオであっても、これらの機能をマスターすることが非常に重要です。
以上がPHPでdate()を使用してタイムスタンプを変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。