本記事は執筆時点(2020年12月26日)の情報をベースにしております。掲載している情報が最新ではない可能性がありますので何卒ご容赦ください。
date関数とは?
date関数は当日の日付を年月日で取得することが出来る関数です。
記述の仕方
date関数は「date('フォーマット形式')」という形で記述します。フォーマットには「Y/m/d」や「Y年m月d日」などがあります。
<?php echo date('Y/m/d'); ?> <?php echo "<br>"; ?> <?php echo date('Y年m月d日'); ?> |
2020/12/17 2020年12月17日 |
---|
date関数のフォーマット
先程の例で4桁だった西暦の表示を下2桁に変更したり、反対に月の表示を2桁に変更(1~9には0を付ける)したり出来ます。
<?php echo date('y/m/d'); ?> <?php echo "<br>";?> <?php echo date('Y/M/d'); ?> |
20/12/17 2020/08/17 |
---|
曜日を取得する
date関数には曜日を取得するフォーマット「w」も用意されています。しかしながら日~土までを番号(0~6)で取得するので別途加工が必要です。
手順としては日から土までの曜日を格納した配列を用意し、date関数で取得した番号目の曜日を取り出すという流れになります。
<?php $day_of_the_week = ['日','月','火','水','木','金','土']; $date_num = date('w'); $today = $day_of_the_week[$date_num]; echo '今日は'.$today.'曜日です。'; ?> |
今日は木曜日です。 |
---|
date関数で曜日を取得する方法の詳しい説明はこちら
PHPで曜日を取得する方法
...
前日や翌月を表示するには?
date関数で取得した年月日をもとに加工する場合は、「年」「月」「日」を分けて取得し加工してから組み合わせます。
<?php $year = date('Y'); $month = date('m'); $day = date('d'); $last_month = $month - 1; $next_year = $year + 1; $today = $year ."年". $month ."月". $day ."日"; echo "今日は" . $today . "です。<br>"; echo "先月は" . $last_month . "月です。<br>"; echo "来年は" . $next_year . "年です。"; ?> |
今日は2020年12月17日です。 先月は11月です。 来年は2021年です。 |
---|
まとめ
このように簡単に日付を取得することが出来ます。実際には取得したものを加工するために他の関数と組み合わせて使うことが多いです。