<html><body> <style> .cal td { border-bottom: 1px solid silver; padding: 4px; } .cur { font-size: 14px; color: black; } .oth { font-size: 9px; color: silver; } .sun { color: red; } </style> <?php // カレンダーの描写 echo make_calendar(2018,2); function make_calendar($year, $month){ // 月初めをセット $t = new DateTime(); $t->setDate($year, $month, 1); // その週の月曜日(カレンダー左上の日)を得る $t->modify("Mon this week"); // 月終わりをセット $end_t = new DateTime(); $end_t->setDate($year,$month, 1); $end_t->modify("Sun"); $html = "<p>{$year}年 {$month}月</p>"; $html .= "<table class='cal'>"; for (;;){ $d = $t->format("d"); $w = $t->format("w"); $c_week = ($w == 0) ? "sun" : (($w == 6) ? "sat" : ""); $c_mon = ((int)$t->format("m") == $month) ? 'cur' : 'oth'; if ($w == 1){ $html .= "<tr>"; } $html .= "<td class='$c_mon $c_week'>$d</td>"; if ($w == 0){ $html .= "</tr>"; } $diff = $end_t->diff($t); if ($diff->days == 0) break; $t->modify("+1 days"); } $html .= "</table>"; return $html; } ?></body></html>