Возможно ли получить первую/последнюю дату недели с использованием PHP Relative Date Time format?Получение первой или последней даты недели
Я попытался сделать:
date_default_timezone_set('Europe/Amsterdam');
$date = new DateTime();
$date->modify('first day of this week'); // to get the current week's first date
echo $date->format('Y-m-d'); // outputs 2011-12-19
$date->modify('first day of week 50'); // to get the first date of any week by weeknumber
echo $date->format('Y-m-d'); // outputs 2011-12-18
$date->modify('last day of this week'); // to get the current week's last date
echo $date->format('Y-m-d'); // outputs 2011-12-17
$date->modify('last day of week 50'); // to get the last date of any week by weeknumber
echo $date->format('Y-m-d'); // outputs 2011-12-18
Как вы можете see он не выдает правильные даты.
Согласно the docs, это должно быть возможно, если я прав.
Я делаю что-то ужасное неправильно?
EDIT
мне нужно использовать в PHP DateTime для дат в далеком будущем.
UPDATE
Он получает только незнакомец прямо сейчас. Я провел еще несколько тестов.
Windows, PHP 5.3.3
2011-12-01
Warning: DateTime::modify() [datetime.modify]: Failed to parse time string (first day of week 50) at position 13 (w): The timezone could not be found in the database in C:\Users\Gerrie\Desktop\ph\Websites\Charts\www.charts.com\public\index.php on line 9
2011-12-01
2011-11-30
Warning: DateTime::modify() [datetime.modify]: Failed to parse time string (last day of week 50) at position 12 (w): The timezone could not be found in the database in C:\Users\Gerrie\Desktop\ph\Websites\Charts\www.charts.com\public\index.php on line 15
2011-11-30
Linux 5.3.8
2011-12-01
2011-12-01
2011-11-30
2011-11-30
Разве это не зависит от языкового стандарта, если воскресенье или понедельник - первый день недели? – mario
@mario: Я не знаю, что ты говоришь мне. В любом случае первые два должны выводить одно и то же. То же самое касается двух последних ИМХО. Будут ли они начинаться в воскресенье/понедельник – PeeHaa