Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Дата рабочей недели по номеру недели
 
 автор: izac   (15.01.2013 в 13:59)   письмо автору
 
 

Дата рабочей недели по номеру недели
есть код
$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 год считает нормально

  Ответить  
 
 автор: cheops   (15.01.2013 в 21:27)   письмо автору
 
   для: izac   (15.01.2013 в 13:59)
 

Давайте сначала договоримся, как мы считаем недели. Год редко начинается с понедельника, поэтому есть в начале года пол недельки - это первая неделя? Или следующая первая? Или мы вообще не с понедельника считаем неделю, а с 1 января?

PS В английской локали понедельник заменяется на воскресенье.

  Ответить  
 
 автор: izac   (16.01.2013 в 11:19)   письмо автору
 
   для: cheops   (15.01.2013 в 21:27)
 

неделя будет считаться с понедельника тесть полная рабочая с ПН по ВОСКР без разницы как год перешёл

  Ответить  
 
 автор: Valick   (16.01.2013 в 12:31)   письмо автору
 
   для: izac   (16.01.2013 в 11:19)
 

-

  Ответить  
 
 автор: cheops   (16.01.2013 в 20:58)   письмо автору
 
   для: izac   (16.01.2013 в 11:19)
 

Вы номер недели из MySQL получаете при помощи функции DATE_FORMAT()? Какой флаг используете, их там четыре? Вам какая неделя нужна? У вас в году их будет 52 или 53?

  Ответить  
 
 автор: izac   (17.01.2013 в 11:15)   письмо автору
 
   для: 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 неделей

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования