PHPで次月や前月を抽出するときに注意するべき点。
私は下記の方法で処理してました。
■次月を出力
1 |
date("n", strtotime("+1 month")) |
上記方法だと特定の日で予想と違う結果が返ってくる
1/30、1/31に処理を見ると結果は「3月」になってしまう。
「2月」が返ってきてほしいが…
1/30に見ると処理は今日の日付の”月”に+1するので「2/30」→「3/1」となり、
結果は「3月」となってしまう。
これを回避するために下記の処理にすること
1 |
date('n', strtotime(date("Y-m-01") . ' +1 month')) |
しっかりと「01」と指定してあげることで回避できる。