タイムスタンプは、PHP で開発する場合に非常に一般的な概念です。ただし、処理のために日付をタイムスタンプに変換する必要がある場合があります。この記事では、PHP を使用して日付をタイムスタンプに変換する方法を学びます。
strtotime() 関数は PHP の非常に便利な関数です。日付文字列をタイムスタンプに変換します。簡単な例を見てみましょう。 「2021-08-12」をタイムスタンプに変換したいとします。コードは次のとおりです:
$date = "2021-08-12"; $timestamp = strtotime($date); echo $timestamp;
上記のコードは出力します:
1628736000
タイムスタンプは 2021 年 8 月 12 日の 0 時を表します。
PHP には、日付と時刻を処理するために使用できる DateTime クラスがあります。 DateTime オブジェクトをインスタンス化することで、日付をタイムスタンプに変換できます。このメソッドは strtotime() を使用するよりも柔軟性があり、日付形式とタイムゾーンをより詳細に制御できます。
次は、「2021/08/12」をタイムスタンプに変換する例です:
$dateString = '2021/08/12'; $date = new DateTime($dateString); echo $date->getTimestamp();
上記のコードの出力は次のとおりです:
1628716800
これは年を表します。 2021年8月12日午前12時。
上記の 2 つの例では、「2021-08-12」と「2021/08/12」を使用しました。日付文字列として。日付形式が異なれば、処理方法も異なる場合があります。一般的な日付形式は次のとおりです:
別の日付形式を使用する必要がある場合は、対応する日付形式文字列を変更するだけです。
最後に、タイムゾーンに注意する必要があります。サーバーとクライアントのタイムゾーンが異なる場合、タイムスタンプ値もそれに応じて異なります。日付を扱うときは、常に一貫したタイムゾーンを使用する必要があります。
DateTime オブジェクトを設定する場合、setTimezone() メソッドを使用してタイム ゾーンを設定できます。たとえば、「2021/08/12」をニューヨーク時間 (America/New_York) のタイムスタンプに変換します:
$dateString = '2021/08/12'; $date = new DateTime($dateString, new DateTimeZone('America/New_York')); echo $date->getTimestamp();
上記のコードは出力します:
1628784000
これは、ニューヨークのタイムゾーンのタイムスタンプ。
概要
PHP では、日付をタイムスタンプに変換することが非常に一般的なニーズです。これは、strtotime() 関数または DateTime クラスを使用して行うことができます。同時に、タイムスタンプ値が常に正しいことを保証するために、統一された日付形式とタイムゾーンを使用することにも注意する必要があります。
以上がPHPを使用して日付をタイムスタンプに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。