[PHP] 日付から曜日を取得する方法(DateTime)

PHPで日付から曜日を取得する方法についてです。
日付から曜日を取得するには、DateTime()関数からformat()で曜日を数字で取得した後、曜日の数字を文字に変換するという二段階の手順を踏みます。

DateTime()を使った曜日取得

日付の情報を取得するには date()関数がよく使われますが、PHP5.2.0からはDateTimeクラスが使えるようになりましたので、DateTimeクラスを使って処理してみます。

<?php
	//new Datetime()関数を利用
	$datetime = new DateTime();
	$weekList = array("日", "月", "火", "水", "木", "金", "土");
	$w = (int)$datetime->format('w');
	echo $weekList[$w].'曜日';

	//日付を指定
	$date = "2015-03-16";
	$datetime = new DateTime($date);
	$weekList = array("日", "月", "火", "水", "木", "金", "土");
	$w = (int)$datetime->format('w');
	echo $weekList[$w].'曜日';

	//年月日を分離して指定
	$year  = 2015;
	$month = 03;
	$day   = 16;
	$datetime = new DateTime();
	$datetime->setDate($year, $month, $day);
	$weekList = array("日", "月", "火", "水", "木", "金", "土");
	$w = (int)$datetime->format('w');
	echo $weekList[$w].'曜日';
?>

format() は日付を文字列形式で取得することができる関数です。
$weekList[数字]の形で曜日の文字を取得します。



Author: webmaster