ホームページ  >  記事  >  バックエンド開発  >  PHPのタイムスタンプ変換関数について話しましょう

PHPのタイムスタンプ変換関数について話しましょう

PHPz
PHPzオリジナル
2023-03-29 10:11:59827ブラウズ

PHP タイムスタンプ変換関数

タイムスタンプ (タイムスタンプ) は時間を表す数値であり、固定時点 (たとえば、グリニッジ標準時の 1970 年 1 月 1 日) からの日付を表すために使用できます。 ) 日 0:00:00) から現在までの秒数。 Web 開発では、タイムスタンプをよく使用します。ただし、タイムスタンプは通常 10 桁の数字で表現されるため、使いにくく、読みにくくなります。この記事では、タイムスタンプを必要な日付形式に簡単に変換できるように、いくつかの PHP タイムスタンプ変換関数を紹介します。

1. Date() 関数

date() 関数は、日付と時刻をフォーマットするために PHP で使用される関数であり、タイムスタンプを標準の日付フォーマットに変換するためにも使用できます。 date() 関数には 2 つのパラメータがあり、最初の必須パラメータは日付形式文字列で、2 番目のオプションのパラメータはタイムスタンプです。タイムスタンプが指定されていない場合は、デフォルトで現在時刻が使用されます。

たとえば、タイムスタンプを標準の日付形式 (年-月-日 時:分:秒) に変換するには、次のコードを使用できます。

$timestamp = 1567221493;  // 时间戳
$date = date('Y-m-d H:i:s', $timestamp);
echo $date;  // 输出:2019-08-31 16:38:13

上記のコードでは、時間を変更する スタンプは 2 番目のパラメーターとして date() 関数に渡され、最初のパラメーターは日付形式文字列の定義に使用されます。 Y は 4 桁の年 (例: 2019)、m は 2 桁の月 (例: 01)、d は 2 桁の日付 (例: 01)、H は 24 時間形式の時 (例: 23) を表します。 、i は分数 (例: 59) を表し、s は秒数 (例: 00) を表します。

2. gmdate() 関数

gmdate() 関数は date() 関数とよく似ており、日付と時刻の書式設定にも使用できますが、それに基づいています。グリニッジ標準時 (GMT) で日付と時刻を表示します。したがって、gmdate() 関数を使用してタイムスタンプを GMT 日付形式に変換できます。

たとえば、タイムスタンプを GMT 日付形式に変換するには、次のコードを使用できます。

$timestamp = 1567221493;  // 时间戳
$date = gmdate('Y-m-d H:i:s', $timestamp);
echo $date;  // 输出:2019-08-31 08:38:13

上記のコードでは、タイムスタンプも 2 番目のパラメータとして gmdate( ) に渡されます。関数では、最初のパラメータは日付形式文字列を定義するために使用されます。 gmdate() 関数は GMT 時間を表示するため、出力時間は現地時間 (つまり、GMT 8) より 8 時間早くなります。

3. strtotime() 関数

strtotime() 関数は、テキストの日付文字列をタイムスタンプに解析したり、タイムスタンプを指定された形式の日付文字列に変換したりできます。この関数は、標準 UNIX エポック (1970 年 1 月 1 日) からの秒数を返します。

たとえば、日付文字列 (2019-08-31 16:38:13 など) をタイムスタンプに変換するには、次のコードを使用できます。

$date_str = '2019-08-31 16:38:13';  // 日期字符串
$timestamp = strtotime($date_str);
echo $timestamp;  // 输出:1567221493

上記のコードでは, 日付文字列は、関数の唯一のパラメータとして strtotime() 関数に渡され、関数は日付文字列をタイムスタンプに解析します。

4. DateTime クラス

DateTime は、PHP で日付と時刻を処理するために使用されるクラスで、豊富な関数とメソッドを提供します。 DateTime クラスを使用すると、タイムスタンプを指定した形式の日付文字列に変換できます。

たとえば、タイムスタンプを標準の日付形式に変換するには、次のコードを使用できます。

$timestamp = 1567221493;  // 时间戳
$date_time = new DateTime();
$date_time->setTimestamp($timestamp);
$date = $date_time->format('Y-m-d H:i:s');
echo $date;  // 输出:2019-08-31 16:38:13

上記のコードでは、まず DateTime オブジェクトを作成し、次に時刻を設定します。 setTimestamp() メソッド スタンプがオブジェクトに設定され、最後に format() メソッドを使用してオブジェクトを標準の日付形式の文字列に変換します。

5. 概要

上記では、date() 関数、gmdate() 関数、strtotime() 関数、DateTime クラスなど、PHP で一般的に使用されるタイムスタンプ変換関数をいくつか紹介しました。これらの関数を使用すると、タイムスタンプを任意の形式の日付文字列に変換できるため、Web 開発での日付形式の処理が容易になります。

以上がPHPのタイムスタンプ変換関数について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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