PHP では、タイムスタンプは 1970 年 1 月 1 日 00:00:00 GMT (グリニッジ標準時) から特定の時刻までの秒数を表す 10 桁の整数です。タイムスタンプは、作成時間の記録、並べ替え、時差の計算など、さまざまなシナリオで非常に役立ちます。
実際のアプリケーションでは、年をタイムスタンプに変換する必要があることがよくありますが、現時点では、PHP にはこの機能を実装するための便利な関数がいくつか用意されています。
次に、年をタイムスタンプに変換するためによく使用されるいくつかの PHP 関数を紹介します。
PHP の strtotime() 関数は、英語テキストの日付時刻または書式設定された日付時刻文字列を Unix タイムスタンプに変換できます。構文は次のとおりです。
strtotime ( string $time [, int $now = time() ] ) : int
このうち、$time
パラメータは変換する日付と時刻の文字列であり、$now
パラメータはオプションです。現在の Unix タイムスタンプ。デフォルトは現在時刻です。
この関数を使用する場合、形式に準拠した年の文字列を渡すだけで、以下に示すように、対応するタイムスタンプを取得できます。
$timestamp = strtotime('2022-01-01 00:00:00'); echo $timestamp;
上記のコードは次を出力します。 1640985600。
年のみを変換する必要がある場合は、以下に示すように、文字列内の月と日付の部分を削除できます。
$year = "2022"; $timestamp = strtotime($year . '-01-01 00:00:00'); echo $timestamp;
上記のコードは、1640985600 のタイムスタンプも取得できます。
PHP の mktime() 関数は、パラメーターで指定された日付の秒数を表す Unix タイムスタンプを返すために使用されます。構文は次のとおりです:
mktime ( [ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] ) : int
そのうち、$hour
、$minut
、$secon
、$month
, $day
および $year
パラメーターは必須であり、順番に渡す必要があります。
この関数を使用する場合、以下に示すように、年パラメーターを渡すだけで済みます。
$year = "2022"; $timestamp = mktime(0, 0, 0, 1, 1, $year); echo $timestamp;
上記のコードは、1640985600 のタイムスタンプも取得できます。
PHP は、日付と時刻を処理する DateTime クラスを提供します。このクラスを使用して、書式設定、加算と減算など、日付と時刻に関するさまざまな操作を実行します。このうち、getTimestamp()
メソッドは Unix タイムスタンプを取得できます。
DateTime クラスを使用して、年からタイムスタンプへの操作を実装します。
$year = "2022"; $dateObj = DateTime::createFromFormat('Y', $year); $timestamp = $dateObj->getTimestamp(); echo $timestamp;
上記のコードでは、1640985600 のタイムスタンプを取得することもできます。
年をタイムスタンプに変換することは、PHP の一般的な操作の 1 つであり、strtotime()、mktime()、および DateTime クラスの 3 つの実装メソッドを導入しました。これらの方法はすべて年をタイムスタンプに変換できますが、実際のシナリオに応じて異なる方法を選択する必要があります。
以上がPHPで年をタイムスタンプに変換する方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。