#php #date
#php #Дата
Вопрос:
Есть ли простой способ, учитывая месяц и год, установить:
Сколько дней в этом месяце (с учетом високосных лет)выполнено- На какой день недели приходится первый день?
Ответ №1:
См. http://php.net/manual/en/function.cal-days-in-month.php
$num = cal_days_in_month(CAL_GREGORIAN, 8, 2003); // 31
и дни недели:
$weekday = date("l", mktime(0,0,0,$month,$day,$year));
$print ($weekday);
Последнее не очень эффективно, но кажется лучше, чем использование getdate:
$my_t=getdate(date("U"));
print("$my_t[weekday], $my_t[month] $my_t[mday], $my_t[year]");
Вывод как
Wednesday, September 29, 2011
Ответ №2:
Вы можете найти ответ на свои вопросы со всеми необходимыми переменными и вычислениями, перейдя в Википедию. http://en.wikipedia.org/wiki/Calculating_the_day_of_the_week
Ответ №3:
Взгляните на date
функцию, в частности date('t')
, на количество дней в месяце (т.Е. На месяц, указанный в time()
) и date('t',$epoch)
на количество дней месяца, представленное меткой $epoch
времени (которая, конечно, указана в эпохе).
А для дня недели есть date('l',$epoch)
(где первый аргумент является строчным 'L'
).