Едва ли функция, но это заставляет меня хихикать, что goto
зарезервированное слово, которое не делает ничего кроме запроса javac для ввода по абсолютному адресу Вас в глазу. Только, чтобы напомнить Вам, что Вы находитесь на земле OO теперь.
t
возвращает количество дней в месяц заданной даты (см. документацию для date
):
$a_date = "2009-11-23";
echo date("Y-m-t", strtotime($a_date));
Вы можете создать дату для первого числа следующего месяца, а затем использовать strtotime ("- 1 день", $ firstOfNextMonth)
Вы можете использовать « t
» в функции даты, чтобы получить номер дня в конкретном месяце.
Код будет примерно таким:
function lastDateOfMonth($Month, $Year=-1) {
if ($Year < 0) $Year = 0+date("Y");
$aMonth = mktime(0, 0, 0, $Month, 1, $Year);
$NumOfDay = 0+date("t", $aMonth);
$LastDayOfMonth = mktime(0, 0, 0, $Month, $NumOfDay, $Year);
return $LastDayOfMonth;
}
for($Month = 1; $Month <= 12; $Month++)
echo date("Y-n-j", lastDateOfMonth($Month))."\n";
Код не требует пояснений. Надеюсь, это поможет.