Web サイトやアプリケーションを開発するとき、タイムスタンプを処理する必要があることがよくあります。タイムスタンプは時間を整数で表す方法で、通常は Unix エポック (1970 年 1 月 1 日 00:00:00 GMT) からの秒数を表します。 PHP では、いくつかの方法でタイムスタンプを読み取り可能な日付と時刻に変換できます。
PHP の date() 関数は、タイムスタンプを読み取り可能な日付と時刻に変換する最も一般的な方法です。この関数は、フォーマット文字列とタイムスタンプの 2 つのパラメータを受け入れます。形式文字列は出力の日付と時刻の形式を指定し、タイムスタンプは変換される時刻を指定します。
たとえば、現在のタイムスタンプを年、月、日、時、分、秒の形式に変換するには、次のコードを使用できます。
echo date("Y-m-d H:i:s", time());
Where, "Y-m-d H :i:s" は、年、月、日、時、分、秒のプレースホルダーを含む形式文字列です。 time() 関数は現在のタイムスタンプを返します。
$timestamp などのタイムスタンプ変数がすでにある場合は、それを 2 番目のパラメーターとして date() 関数に渡すことができます。
echo date("Y-m-d H:i:s", $timestamp);
date() 関数に加えて、PHP は日付と時刻を処理する DateTime クラスも提供します。 date() 関数とは異なり、DateTime クラスには、より多くの時間操作と書式設定のオプションが用意されています。以下は、DateTime クラスを使用してタイムスタンプを読み取り可能な日付と時刻に変換する例です。
$timestamp = time(); $datetime = new DateTime(); $datetime->setTimestamp($timestamp); echo $datetime->format("Y-m-d H:i:s");
$timestamp は変換対象のタイムスタンプ、$datetime は新しい DateTime インスタンス、setTimestamp( ) メソッドが使用されます タイムスタンプを設定するには、format() メソッドを使用して日付と時刻をフォーマットします。
上記の 2 つの方法に加えて、PHP は日付と時刻をフォーマットする strftime() 関数も提供します。 strftime() 関数は、フォーマット文字列とタイムスタンプの 2 つのパラメータを受け入れます。 date() 関数とは異なり、strftime() 関数はローカライズされた日付と時刻を返します。
次は、strftime() 関数を使用してタイムスタンプを読み取り可能な日付と時刻に変換する例です。
$timestamp = time(); echo strftime("%Y-%m-%d %H:%M:%S", $timestamp);
ここで、"%Y-%m-%d %H: %M: %S" は、date() 関数の形式文字列と同様の形式文字列です。ただし、strftime() 関数の形式文字列とオプションはプラットフォームとロケールに依存するため、date() 関数の形式文字列とオプションとは異なる場合があることに注意してください。
概要
PHP では、タイムスタンプを読み取り可能な日付と時刻に変換する方法がいくつかあります。 date() 関数を使用するのが最も一般的な方法で、DateTime クラスはより多くの時間操作および書式設定オプションを提供し、strftime() 関数はローカライズされた日付と時刻を返すことができます。開発者は実際の状況に基づいて最適な方法を選択できます。
以上がPHP でタイムスタンプを時刻形式に変換するさまざまな方法について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。