|
|
|
| Дата рабочей недели по номеру недели
есть код
$week_number = 51;
$year = 2012;
$f_day = date('Y/m/d', $week_number * 7 * 86400 + strtotime('1/1/' . $year) - date('w', strtotime('1/1/' . $year)) * 86400 + 86400);
$l_day = date('Y/m/d', ($week_number + 1) * 7 * 86400 + strtotime('1/1/' . $year) - date('w', strtotime('1/1/' . $year)) * 86400);
|
но mysql показывает что 51 неделя это от 17-12-2012--23-12-2012 а этот код выдайт
2012/12/24
2012/12/30
а 2013 год считает нормально | |
|
|
|
|
|
|
|
для: izac
(15.01.2013 в 13:59)
| | Давайте сначала договоримся, как мы считаем недели. Год редко начинается с понедельника, поэтому есть в начале года пол недельки - это первая неделя? Или следующая первая? Или мы вообще не с понедельника считаем неделю, а с 1 января?
PS В английской локали понедельник заменяется на воскресенье. | |
|
|
|
|
|
|
|
для: cheops
(15.01.2013 в 21:27)
| | неделя будет считаться с понедельника тесть полная рабочая с ПН по ВОСКР без разницы как год перешёл | |
|
|
|
|
|
|
|
для: izac
(16.01.2013 в 11:19)
| | - | |
|
|
|
|
|
|
|
для: izac
(16.01.2013 в 11:19)
| | Вы номер недели из MySQL получаете при помощи функции DATE_FORMAT()? Какой флаг используете, их там четыре? Вам какая неделя нужна? У вас в году их будет 52 или 53? | |
|
|
|
|
|
|
|
для: cheops
(16.01.2013 в 20:58)
| | использую запрос
SELECT DISTINCT WEEK(date) as wek,YEAR(date) as year FROM tbl_stats WHERE WEEK(date)!=WEEK(NOW()) ORDER BY year ASC
|
Мне нужны все даты ПН и ВСКР если есть такая дата в бд , 52 тк я понял код выше на работает с 53 неделей | |
|
|
|