ホームページ >バックエンド開発 >PHPの問題 >PHPでdate()を使用してタイムスタンプを変換する方法

PHPでdate()を使用してタイムスタンプを変換する方法

PHPz
PHPzオリジナル
2023-03-28 15:56:411605ブラウズ

PHP を開発および理解する過程で、タイムスタンプ (タイムスタンプ) と日付 (日付) はよく使用される概念です。時間データを処理するときは、タイムスタンプを日付に変換するか、日付をタイムスタンプに変換する必要があります。

PHP には、タイムスタンプと日付を簡単に変換するためのさまざまな関数が用意されています。この記事では、PHPのdate()関数の使い方やタイムスタンプとの変換関係について詳しく紹介します。

タイムスタンプ

タイムスタンプは、時間を表す方法を指します。つまり、一定の時点 (通常は 1970 年 1 月 1 日の 00:00) 00 からの時間を表します。 :00 UTC)、それから経過した秒数をカウントします。 PHP では、time() 関数を呼び出すことで、以下に示すように現在の時刻のタイムスタンプを取得できます。

$timestamp = time();

date() function

date( ) は、日付の書式設定に使用される PHP 関数を使用して、指定された形式で日付と時刻を出力できます。構文は次のとおりです:

date($format, $timestamp)

その中で、$format は日付出力形式であり、$timestamp はオプションのパラメータであり、フォーマットする必要があるタイムスタンプを表します。タイムスタンプが渡されない場合、現在のタイムスタンプはデフォルトで使用されます。一般的に使用される形式パラメーターの一部を次に示します。

#H時間 (24 時間形式、先頭にゼロ付き)i分 (先頭にゼロ付き) s秒 (先頭にゼロ付き) ゼロ) w曜日 (0 は日曜日、1 は月曜日など) a AM または PM (小文字) AAM または PM (大文字)
Parameter Description
Y 4 桁の年
m 数字の月 (先頭にゼロ付き)
d 日 (先頭にゼロ付き)
たとえば、次のようになります。タイムスタンプ 1609459584 を「2021-01-01 12:12:12」の形式の文字列にフォーマットするには、次のコードを使用できます:

echo date('Y-m-d H:i:s', 1609459584);
出力結果は次のとおりです:

2021-01-01 12:12:12

日付までのタイムスタンプ

すでにタイムスタンプがある場合は、以下に示すように、date() 関数を使用して、指定された形式の日付文字列に変換できます。
$timestamp = 1609459584;
$datetime = date('Y-m-d H:i:s', $timestamp);
echo $datetime;

日付からタイムスタンプへの変換

日付文字列があり、それをタイムスタンプに変換する必要がある場合は、strtotime() 関数を使用できます。この関数は、文字列時刻を UNIX タイムスタンプに変換します。

$datetime = '2021-01-01 12:12:12';
$timestamp = strtotime($datetime);
echo $timestamp;

出力結果は次のとおりです:

1609459584

strtotime() 関数の入力時刻は英語の日付形式である必要があることに注意してください。たとえば、上記の例で指定されている時刻は、が「2021- 01-01 12:12:12」の場合、時刻形式が正しくない場合、関数は false を返します。

現地時間

上で紹介した date() と strtotime() は、デフォルトでサーバーの現地時間を使用します。ただし、時間を処理するときに指定したタイム ゾーンを使用する必要がある場合は、date_default_timezone_set() 関数を使用してタイム ゾーンを設定できます。

date_default_timezone_set('Asia/Shanghai');
echo date('Y-m-d H:i:s');

時間形式パラメータは変更されず、出力の日付と時刻は自動的に東部第 8 地区時間に変換されます:

2022-03-15 15:33:57

概要

PHP では、タイムスタンプと日付の変換は非常に一般的な操作です。これらの変換は、この記事で紹介した date() 関数と strtotime() 関数を使用して簡単に実行できます。

使用シナリオも非常に幅広く、たとえば、Web サイトに記事を公開する場合、タイムスタンプを日付に変換したり、人間が判読できる日付をタイムスタンプに変換して比較する必要があります。どのようなシナリオであっても、これらの機能をマスターすることが非常に重要です。

以上がPHPでdate()を使用してタイムスタンプを変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。