PHP で日付の現在の月を取得する

Roshan Parmar 2023年1月30日
  1. PHP で date() 関数を使用して日付の現在の月を取得する
  2. PHP で strtotime() および date() 関数を使用して日付の現在の月を取得する
  3. PHP の DateTime クラスを使用して現在の月を取得する
PHP で日付の現在の月を取得する

date() 関数は、タイムスタンプをフォーマットする組み込みの PHP 関数です。UNIX タイムスタンプでは、コンピュータは日付と時刻を保存します。1970 年 1 月 1 日以降、この時間は秒単位で測定されています。これは人間が理解するのが難しいため、PHP はタイムスタンプをより読みやすくわかりやすい形式に変更します。

PHP で日付の月の部分を取得する方法はいくつかあります。次のセクションでは、現在の日付または任意の日付から日付の月を取得する方法を学習します。

PHP で date() 関数を使用して日付の現在の月を取得する

PHP の date() 関数は、最初のパラメーターのフォーマット文字に基づいて、日付と時刻に関連する情報を提供できます。最大 2つの引数を関数に送信できます。引数を 1つだけ使用すると、現在の時刻に関する情報が返されます。

月の 3つの異なる形式を生成するには、date() 関数の最初のパラメーターで 3つの異なるフォーマット文字を使用します。書式設定文字は次のとおりです。

date() 関数には、次のフォーマットオプションがあります。date() 関数のフォーマットパラメータは、複数の文字を含めることができる文字列であり、以下に示すように、さまざまな形式で日付を生成できます。

<?php
echo "Current month representation, having leading zero in 2 digit is: " . date("m");
echo "\n";
echo "The Syntex representation of current month with leading zero is: " . date("M");
echo "\n";
echo "Current month representation,not having leading zero in 2 digit is: " . date("n");
?>

出力:

Current month representation, having leading zero in 2 digits is: 12
The Syntex representation of the current month with leading zero is: Dec
Current month representation, not having leading zero in 2 digits is: 12

ここで、

  • d -月の日を表します。先行ゼロの付いた 2つの数字が使用されます(01 または 31)。
  • D - テキストでは、曜日(Mon から Sun)を表します。
  • m - 月は、先行ゼロ(01 または 12)が付いた数字の文字 m で表されます。
  • M - 本文中、M は月を表し、短縮されています(Jan から Dec)。
  • y – 2 桁の年(07 または 21)を示します。
  • Y - 4つの数字の年は文字 Y で表されます。

PHP で strtotime() および date() 関数を使用して日付の現在の月を取得する

strtotime() メソッドを使用して、任意の日付から月を取得するための 2つの手順を実行します。

まず、日付を同じタイムスタンプに変換します。date() 関数をフォーマット文字とともに使用して、そのタイムスタンプから月を取得します。

<?php
$timestamp = strtotime("5th September 2003");
echo "Current month representation, having leading zero in 2 digits is: " . date("m", $timestamp);
echo "\n";
echo "The Syntex representation of current month with leading zero is: " . date("M", $timestamp);
echo "\n";
echo "Current month representation,not having leading zero in 2 digits is: " . date("n", $timestamp);
?>

出力:

Current month representation, having leading zero in 2 digits is: 09
The Syntex representation of the current month with leading zero is: Sep
Current month representation,not having leading zero in 2 digits is: 9

PHP の DateTime クラスを使用して現在の月を取得する

PHP 5.2 では、開発者が一般的な問題を解決するのを支援するために、特定のビルド済みクラスが導入されています。DateTime はクラスの 1つであり、日付と時刻の問題を処理します。次の 2つの手順に従って、DateTime クラスを使用して現在の月を取得します。

まず、DateTime() クラスオブジェクトを作成します。現在の時刻は、DateTime() クラスがパラメーターなしで使用された場合に表されます。

次に、DateTime() クラスの format() 関数を使用して、新しく形成されたオブジェクトから年を取得します。

<?php
$now = new DateTime();
echo "Current month representation, having leading zero in 2 digit is: " . $now->format('m');
echo "\n";
echo "The Syntex representation of current month with leading zero is: " . $now->format('M');
echo "\n";
echo "Current month representation,not having leading zero in 2 digit is: " . $now->format('n');
?>

出力:

The 2 digit representation of the current month with leading zero is: 12
The textual representation of the current month with leading zero is: Dec
The 2 digit representation of the current month without leading zero is: 12

関連記事 - PHP DateTime