プログラミングでは時刻処理が必要になることが多く、タイムスタンプは一般的な時刻形式であり、1970 年 1 月 1 日 00:00:00 UTC (協定世界時) 数値から経過した秒数を指します。ただし、タイムスタンプはユーザーにとって直感的ではないため、タイムスタンプを日付と時刻に変換する方がユーザーのニーズに適しています。タイムスタンプを日付に変換することは、PHP 開発者にとって必須のスキルです。
1. date() 関数を使用する
PHP では、date() 関数を使用してタイムスタンプを必要な日付形式に変換できます。 date() 関数の構文は次のとおりです。
date($format, $timestamp);
このうち、$format は生成する日付形式を表します。たとえば、「Y-m-d H:i:s」は年-月-日の時間を表します。 :分:秒。 $timestamp は、変換する必要があるタイムスタンプを表します。現在の日付への変換の例を次に示します。
date('Y-m-d', time());
上記のコードでは、time() 関数は現在のタイムスタンプを返し、date() 関数はそれを年-月-日の形式に変換します。 。
2. strtotime() 関数を使用する
time() 関数を使用して現在のタイムスタンプを取得することに加えて、多くの場合、タイムスタンプを取得する必要があります。指定された時刻を日付形式に変換します。 PHP には、日付文字列をタイムスタンプに変換できる strtotime() 関数が用意されています。 strtotime() 関数の構文は次のとおりです。
strtotime($time, $now);
このうち、$time は、「2021-05-20 10:30:00」など、変換する必要がある時刻文字列を表します。 $now はオプションのパラメータを表し、$time の計算に使用されるタイムスタンプを示します。デフォルトは現在時刻です。以下は、指定された日付への変換の例です。
strtotime('2021-05-20');
上記のコードでは、strtotime() 関数は文字列「2021-05-20」を日付のタイムスタンプに変換します。
3. DateTime() クラスを使用する
date() 関数と strtotime() 関数の使用に加えて、PHP では、DateTime() クラスも提供しています。日付処理と時刻処理。 DateTime() クラスは、PHP 5.2.0 で導入された、よりオブジェクト指向の時間を処理する方法です。以下は、DateTime() クラスを使用してタイムスタンプを日付形式に変換する例です。
$date = new DateTime(); $date->setTimestamp(1621455646); echo $date->format('Y-m-d H:i:s');
上記のコードでは、最初に DateTime() インスタンスが作成され、次に setTimestamp() メソッドが使用されます。タイムスタンプを 1621455646 に設定し、最後に format() メソッドを使用して年-月-日 時:分:秒の形式に変換して出力します。
概要:
3 つのメソッドはすべて、タイムスタンプを指定された日付形式に変換できます。 date() 関数は単純な日付形式に適しており、strtotime() 関数は時間計算または相対時間を計算する必要があるシナリオに適しています。 DateTime() クラスを使用すると、より柔軟で、より複雑な日付要件を処理できます。開発者は実際の状況に応じて適切な方法を選択できます。
以上がPHPでタイムスタンプを日付に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。