PHP では、タイムスタンプは、1970 年 1 月 1 日の 0:00:00 UTC から経過した秒数を表す整数値です。 Web アプリケーションを開発する場合、時間を変換して操作する必要があります。この記事では、PHP を使用して時間をタイムスタンプに変換する方法について説明します。
strtotime() 関数を使用する
PHP の strtotime() 関数は、時刻文字列をタイムスタンプに変換できます。この関数の構文は次のとおりです。
strtotime(string $time, int $now = ?) : int
このうち、$time パラメータは時刻文字列を含む文字列であり、$now パラメータはオプションであり、参照タイムスタンプを表します。
次は、strtotime() 関数を使用して時刻文字列をタイムスタンプに変換するサンプル コードです。
$time_str = "2022-01-01 12:00:00"; // 时间字符串 $timestamp = strtotime($time_str); // 将时间字符串转换为时间戳 echo $timestamp; // 输出时间戳
上記のコードを実行すると、タイムスタンプが出力されます。
DateTime クラスの使用
PHP の DateTime クラスを使用して日付オブジェクトを作成し、日付と時刻を操作するためのさまざまなメソッドを提供します。 DateTime クラスは、日付を指定された書式文字列に書式設定したり、書式設定された日付をタイムスタンプに変換したりできる format() メソッドも提供します。
次は、DateTime クラスを使用して日付をタイムスタンプに変換するサンプル コードです。
$datetime_str = "2022-01-01 12:00:00"; // 日期字符串 $datetime_obj = new DateTime($datetime_str); // 创建日期对象 $timestamp = $datetime_obj->getTimestamp(); // 将日期对象转换为时间戳 echo $timestamp; // 输出时间戳
上記のコードを実行すると、タイムスタンプが出力されます。
mktime() 関数を使用する
PHP の mktime() 関数は、時、分、秒などの指定された時間コンポーネントに基づいてタイムスタンプを作成できます。この関数の構文は次のとおりです。
mktime(int $hour, int $minute, int $second, int $month = ?, int $day = ?, int $year = ?, int $is_dst = -1) : int
このうち、$hour、$ minutes、$sec パラメータはそれぞれ時間、分、秒を表し、$month、$day、$year はそれぞれを表します。パラメータは月、日、年を表します。 $is_dst パラメータはオプションで、現在夏時間であるかどうかを示します。
以下は、mktime() 関数を使用して日付をタイムスタンプに変換するサンプル コードです。
$hour = 12; $minute = 0; $second = 0; $month = 1; $day = 1; $year = 2022; $timestamp = mktime($hour, $minute, $second, $month, $day, $year); echo $timestamp; // 输出时间戳
上記のコードを実行すると、タイムスタンプが出力されます。
概要
この記事では、strtotime() 関数、DateTime クラス、および mktime() 関数を使用して、PHP で時刻をタイムスタンプに変換する 3 つの方法を紹介します。適切な方法の選択は、特定のニーズとアプリケーション シナリオによって異なります。開発者は、実際の状況に基づいてタイムスタンプ変換を実装するための最も適切な方法を選択する必要があります。
以上がPHP を使用して時刻をタイムスタンプに変換する方法について説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。