PHP で現在の日付と現在時刻を取得する方法
この記事では、PHP で現在の日付と現在時刻を取得するメソッドを紹介します。
date()
およびtime()
関数を使用するDateTime
オブジェクトを使用する
PHP で現在の日付と時刻を取得するために date()
および time()
関数を使用する
組み込み関数 date()
と time()
を使用して、PHP の現在の日付
と時刻
を取得します。これらの関数は、タイムゾーンに関係なく現在の日付と時刻を表示します。これら 2つの関数を使用するための正しい構文は次のとおりです。
date($format, $timestamp);
組み込み関数 date()
には 2つのパラメーターがあります。パラメータの詳細は以下の通りです
パラメーター | 説明 | |
---|---|---|
$format |
必須の | 表示します。日付形式。いくつかのバリエーションがあります。文字列でなければなりません。 |
$timestamp |
オプション | 日付 を取得するためのタイムスタンプ。省略すると、現在の日付が返されます。 |
指定されたフォーマットに従って設定された日付
を返します。
time();
time()
関数はパラメーターを受け入れません。現在の PHP タイムスタンプを返します。タイムスタンプは、Unix エポック以降に計算された秒数です。
以下のプログラムは、タイムゾーンに関係なく、現在の日付
と時間
を取得する方法を示しています。
<?php
$DateAndTime = date('m-d-Y h:i:s a', time());
echo "The current date and time are $DateAndTime.";
?>
"m-d-Y h:i:s a"
の形式は、月、日、4 桁の年の値で返される日付と、時間、分、秒の時間を指定します。
出力:
The current date and time are 05-20-2020 05:44:03 pm.
ここで注意すべき点の 1つは、time
が特定のタイムゾーンに従って設定されていないことです。Unix タイムスタンプを使用して表示される時刻です。タイムゾーンに基づいて現在の PHP の時刻
を確認する場合は、タイムゾーンを手動で設定する必要があります。
たとえば、アムステルダムの現在の時刻
を確認する場合は、アムステルダムのタイムゾーンを手動で設定する必要があります。この目的のために、PHP 関数 date_default_timezone_set()
が使用されます。この関数を使用するための正しい構文は次のとおりです
date_default_timezone_set($timezone);
1つのパラメーターのみを受け入れます。
パラメーター | 説明 | |
---|---|---|
$timezone |
必須の | これは、タイムゾーンを設定する地域を識別する文字列です。サポートされているタイムゾーンのリストを確認できますここ。 |
この関数はブール値を返します。タイムゾーンが正常に設定されると、true
を返します。それ以外の場合は、false
を返します。
以下のプログラムは、タイムゾーンを設定した後、時刻を表示します。
<?php
date_default_timezone_set('Europe/Amsterdam');
$DateAndTime = date('m-d-Y h:i:s a', time());
echo "The current date and time in Amsterdam are $DateAndTime.\n";
date_default_timezone_set('America/Toronto');
$DateAndTime2 = date('m-d-Y h:i:s a', time());
echo "The current date and time in Toronto are $DateAndTime2.";
?>
出力:
The current date and time in Amsterdam are 05-20-2020 08:08:42 pm.
The current date and time in Toronto are 05-20-2020 02:08:42 pm.
PHP で DateTime
オブジェクトを使用して現在の日付と時刻を取得する
PHP では、DateTime
クラスを使用して、date
と time
に関連する問題に対処します。このクラスの format()
関数は、指定された形式で日付と時刻を表示します。
最初に DateTime
オブジェクトを作成し、次に format()
関数を呼び出して日付と時刻を表示します。
$ObjectName = new DateTime();
$ObjectName->format($format);
関数 format()
は 1つのパラメーターを受け入れます。
パラメーター | 説明 | |
---|---|---|
$format |
必須の | 日付と時刻のフォーマット。文字列でなければなりません。 |
現在の日付
と時刻
を表示します。プログラムの例は次のとおりです。
<?php
$Object = new DateTime();
$DateAndTime = $Object->format("d-m-Y h:i:s a");
echo "The current date and time are $DateAndTime.";
?>
出力は指定されたフォーマットの date
と time
です。表示される時間は、Unix エポック以降に計算された時間です。
出力:
The current date and time are 20-05-2020 06:21:06 pm.
特定のタイムゾーンに従って時間
を確認したい場合は、タイムゾーンを手動で設定する必要があります。この目的のために、DateTime
クラスの PHP 組み込み関数 setTimezone()
が使用されます。この関数を使用するための正しい構文は次のとおりです。
$ObjectName = new DateTime();
$ObjectName->setTimezone(DateTimezone $timezone);
関数 setTimezone()
はパラメータを 1つだけ受け入れます。成功すると DateTime
オブジェクトを返し、失敗すると False
を返します。
パラメータ | 説明 | |
---|---|---|
$timezone |
必須の | タイムゾーンを指定する DateTimezone オブジェクトです。サポートされているタイムゾーンのリストを確認できますここ。 |
特定のタイムゾーンに従って時間
を表示します。プログラムの例は次のとおりです。
<?php
$Object = new DateTime();
$Object->setTimezone(new DateTimeZone('Europe/Amsterdam'));
$DateAndTime = $Object->format("d-m-Y h:i:s a");
echo "The current date and time in Amsterdam are $DateAndTime.\n";
$Object->setTimezone(new DateTimeZone('America/Toronto'));
$DateAndTime = $Object->format("d-m-Y h:i:s a");
echo "The current date and time in Toronto are $DateAndTime.";
?>
出力:
The current date and time in Amsterdam are 20-05-2020 08:43:02 pm.
The current date and time in Toronto are 20-05-2020 02:43:02 pm.
関連記事 - PHP Date
- PHP で日付に日を追加する方法
- PHP を使用して 2つの日付の差を計算する方法
- PHP で DateTime を文字列に変換する方法
- PHP で文字列を日付と日時に変換する方法
- PHP で 1つの日付形式を別の日付形式に変換する方法