Получить начало и конец дней для данной недели в PHP
Я пытаюсь получить диапазон недели, используя воскресенье в качестве даты начала, и контрольную дату, скажем$date
, но я просто не могу понять это.
Например, если бы у меня была $ date как 2009-05-01, я бы получил 2009-04-26 и 2009-05-02. 2009-05-10 даст 2009-05-10 и 2009-05-16. Мой текущий код выглядит следующим образом (я не могу вспомнить, откуда я его взял, так как я забыл записать URL в моих комментариях):
function x_week_range(&$start_date, &$end_date, $date)
{
$start_date = '';
$end_date = '';
$week = date('W', strtotime($date));
$week = $week;
$start_date = $date;
$i = 0;
while(date('W', strtotime("-$i day")) >= $week) {
$start_date = date('Y-m-d', strtotime("-$i day"));
$i++;
}
list($yr, $mo, $da) = explode('-', $start_date);
$end_date = date('Y-m-d', mktime(0, 0, 0, $mo, $da + 6, $yr));
}
Я понял, что все, что он сделал, это добавил 7 дней к текущей дате. Как бы вы это сделали?