前回の記事「phpループ学習10:水仙の数を求め、すべての水仙の数を出力する」では、水仙の数を求めてforループを使って出力する方法を紹介しました。すべての水仙メソッドの数。今回は日付と時刻に注目し、PHPを使用して特定の年または月の最大日数を取得する方法を紹介します。
この記事のテーマは、年と月が与えられた場合、その月が何日あるかを判断することです。
1 か月の最大日数が 4 つの状況に分けられることは誰もが知っています:
大きな月: 31 日;
小さい月: 30 日;
うるう年の 2 月: 29 日
通常の 2 月年: 28 日
毎年、1 月、3 月、5 月、7 月、8 月、10 月、12 月が大きな月として固定され、4 月、6 月、9 月、11 月が小さな月となります。
したがって、選択制御ステートメント switch case
を使用して判断選択を行うことができます。
月$month
が 1、3、 5、7、8、10、12 の場合は 31 が出力され、$month
が 4、6、9、11 の場合は 30 が出力されます。コードは次のように記述できます:
switch($month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: echo "$month 月共有31天";break; case 4: case 6: case 9: case 11: echo "$month 月共有30天";break; }
テストします:
$month=1
の場合、出力は次のとおりです:
When$month=4
、出力は次のとおりです:
説明: switch ステートメント式に基づきます 値は case の値と順番に比較されます。値が等しくない場合は、次の case の検索を続けます。等しい場合は、switch ステートメントが終了するまで、対応するステートメントが実行されます。休憩が発生します。
OK, 大きい月と小さい月の判断はまだ非常に簡単です。2 月は残り 1 か月しかありません。2 月の日数を計算するには、まず、その年が 2 月であるかどうかを判断する必要があります。閏年。これを実現するには、次の関数を使用します。 (詳細については、記事「PHP が 20 世紀のすべての閏年を出力する方法 」を参照してください)。閏年の場合は true または 1 を返し、閏年ではない (通常の年) 場合は false または 0 を返します。
次に、switch case ステートメントで
IsLeapyear($year) 関数を呼び出して判定を行います。
function IsLeapYear($year){ return ($year % 400 == 0 || $year % 4 == 0 && $year % 100 != 0); }
case 2: echo IsLeapYear($year)? "$month 月共有29天" : "$month 月共有28天";break;ログイン後にコピー
は、条件「式 1」が true の場合はステートメント「式 2」を実行し、それ以外の場合はステートメント「式 3」を実行することを意味します。 1 ~ 12 か月以外の数値を入力するときにユーザーに通知するデフォルトのブランチを追加することもできます:
表达式1?表达式2:表达式3
わかりました。上記のコードを関数関数としてカプセル化します:
default:echo '输入错误,请输入1-12之间的数';break;
GetMaxDay($year,$month)
関数を呼び出します:
function IsLeapYear($year){ return ($year % 400 == 0 || $year % 4 == 0 && $year % 100 != 0); } function GetMaxDay($year,$month) { switch($month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: echo "$year 年 $month 月共有31天
";break; case 4: case 6: case 9: case 11: echo "$year 年 $month 月共有30天
";break; case 2: echo IsLeapYear($year)? "$year 年 $month 月共有29天
" : "$year 年 $month 月共有28天
";break; default:echo '输入错误,请输入1-12之间的数
';break; } }
2000 年は閏年であるため、2 月は 29 日あり、2001 年は平年であるため、2 月は 29 日あることがわかります。 3 月は大きな月なので 31 日あり、4 月は小さな月なので 30 日あります。
わかりました。これですべてです。他に知りたいことがある場合は、これをクリックしてください。 → →
phpビデオチュートリアル以上がPHP を使用して指定した月の日数を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。