YearWeek от DateTime

Я хотел бы получить YearWeek от DateTime в PHP:

$day = \DateTime ...
$YearWeek = date("YW", date_timestamp_get($day));

Но если неделя длится два года, она не работает:

$day // 2017-01-01
$YearWeek // I get 201752 instead of 201652

Что я должен делать?

-1

Решение

Из руководства по Дата(), использование o вместо Y:

ISO-8601 недельный год нумерации. Это имеет то же значение, что и Y, за исключением
что если номер недели ISO (W) относится к предыдущему или следующему году,
этот год используется вместо. (добавлено в PHP 5.1.0)

$day = strtotime('2017-01-01');
echo date("YW", $day);  //201752
echo date("oW", $day);  //201652
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector