ホームページ >バックエンド開発 >PHPの問題 >PHPでタイムスタンプをフォーマットに変換する方法

PHPでタイムスタンプをフォーマットに変換する方法

DDD
DDDオリジナル
2023-07-10 14:46:312107ブラウズ

php には、タイムスタンプを形式に変換する 3 つのメソッドがあります: 1. PHP の組み込み関数 "date()" を使用し、必要に応じて時刻形式オプションを選択し、変換を実行します; 2. DateTime クラスを使用します。 「createFromFormat()」メソッドはタイムスタンプを DateTime オブジェクトに変換し、「format()」メソッドを使用してフォーマットします。 3. PHP の「strftime()」関数を使用して、システムのローカリゼーション設定に従ってタイムスタンプを変換します。対応する日付と時刻の文字列としてフォーマットされます。

PHPでタイムスタンプをフォーマットに変換する方法

#この記事の動作環境: Windows 10 システム、php8.1.3 バージョン、dell g3 コンピューター。

PHP は、Web アプリケーションの開発に使用されるサーバー側スクリプト言語であり、時間処理のための強力な組み込み関数とメソッドが多数組み込まれています。タイムスタンプは 1970 年 1 月 1 日からの秒数であり、PHP はタイムスタンプを人間が判読できる時刻形式に変換する簡単な方法を提供します。この記事では、PHP を使用してタイムスタンプを時刻形式に変換する方法を紹介し、一般的な時刻形式の例をいくつか示します。

一般的な時刻書式設定オプションをいくつか示します:

- Y: 4 桁の年 (例: 2022)

- y: 2 桁の年 (例: 22)

- F: 完全な月名 (例: January)

- M: 省略形の月名 (例: Jan)

- m: 2 桁の月 (01 ~ 12)

- d: 2 桁の日付 (01 ~ 31)

- H: 24 時間形式の時間 (00 ~ 23)

- h : 12 進数の時間数-時の形式 (01 ~ 12)

- i: 分数 (00 ~ 59)

- s: 秒数 (00 ~ 59)

- A : 大文字の午前または午後 (AM または PM)

方法 1: date() 関数を使用する

最も一般的な方法は、PHP の組み込み関数 date を使用することです。 () これにより、タイムスタンプを必要な日付と時刻の形式にフォーマットすることができます。以下に例を示します。

$timestamp = 1612345678;

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

echo $date;

上記のコードは 2021-02-03 12:34:56 を出力します。この例では、タイムスタンプ 1612345678 とフォーマット文字列 'Y-m-d H:i:s' を使用します。Y は年、m は月、d は日付、H は時、i は分、s を表します。 2番目を表します。このようにして、必要に応じてさまざまな書式設定オプションを自由に組み合わせることができます。

方法 2: DateTime クラスを使用する

PHP には、より多くの時間操作メソッドと関数を提供する DateTime クラスも用意されています。タイムスタンプは、DateTime クラスの createFromFormat() メソッドを使用して DateTime オブジェクトに変換し、format() メソッドを使用して目的の日付と時刻の形式にフォーマットすることができます。以下に例を示します:

$timestamp = 1612345678;

$datetime = DateTime::createFromFormat('U', $timestamp);

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

echo $date;

このコードの出力は上記の例と同じです。 DateTime クラスの createFromFormat() メソッドは 2 つのパラメータを受け入れます。最初のパラメータは、入力時刻形式を指定する形式文字列です。ここでは、タイムスタンプ形式を表すために 'U' を使用します。 2 番目のパラメータはタイムスタンプそのものです。次に、format() メソッドを使用して、DateTime オブジェクトを指定された日付と時刻の形式にフォーマットします。

方法 3: strftime() 関数を使用する

タイムスタンプをローカライズされた日付と時刻の形式に変換する場合は、PHP の strftime() 関数を使用できます。 。この関数は、現在のシステムのローカリゼーション設定に基づいて、タイムスタンプを対応する日付と時刻の文字列にフォーマットします。以下は例です:

$timestamp = 1612345678;
$format = '%Y-%m-%d %H:%M:%S';
$date = strftime($format, $timestamp);
echo $date;

この例では、まず書式文字列 '%Y-%m-%d %H:%M:%S' を定義します。ここで、書式オプションは次と同じです。前 同じ例です。次に、このフォーマット文字列とタイムスタンプを strftime() 関数に渡し、タイムスタンプをローカライズされた日付と時刻のフォーマットに変換します。

strftime() 関数を使用する場合、フォーマット オプションはシステムや言語の設定によって異なる場合があることに注意してください。したがって、使用する前に、必要な形式オプションが現在の環境で有効かどうかを確認することをお勧めします。

概要

この記事では、タイムスタンプを日付と時刻の形式に変換するいくつかの方法を紹介します。 date() 関数の使用は最も一般的で簡単な方法であり、必要に応じて時間を柔軟にフォーマットできます。 DateTime クラスは、より多くの時間操作機能を提供し、より複雑な日付と時刻の計算を処理できます。 strftime() 関数は、ローカライズされた設定に基づいて、タイムスタンプをローカライズされた日付と時刻の形式に変換できます。特定のニーズに応じて、タイムスタンプ変換タスクを完了する適切な方法を選択します。

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

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