Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Как определить вторую пятницу месяца? [3]
Покинул форум
Сообщений всего: 332
Дата рег-ции: Март 2010 Откуда: Таджикистан, Худжанд
Помог: 0 раз(а)
[+]
Champion, я говорю 23-марта- это вторник, ты говоришь 24-марта - это среда, значит результат будет меняться. Вот закономерность видишь
Приведу следующий пример:
23-марта это -вторник, вторник - это 2 день недели;
24-марта это -среда, среда - это 3 день недели;
6-марта это -суббота, суббота - это 6 день недели;
доказательство на закономерность случайных дней в марте:
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Champion пишет:
Короче вариант JustUserRа лучше.
Спасибо старался оптимизироваться
jfr пишет:
Не связано число 21 с пятницей, можно вставить 22 например
Зачем вообще нужна переменная $day если заместо нее можно в функциях mktime или strtotime можно указать строковую константу 1 - об этом и речь
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
jfr
Отправлено: 23 Марта, 2010 - 16:56:54
Посетитель
Покинул форум
Сообщений всего: 332
Дата рег-ции: Март 2010 Откуда: Таджикистан, Худжанд
Помог: 0 раз(а)
[+]
Я же не говорю зачем лишняя функция strtotime, если есть аргумент $day, я шучу
JustUserR
Отправлено: 23 Марта, 2010 - 16:58:57
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
jfr пишет:
Я же не говорю зачем лишняя функция strtotime, если есть аргумент $day, я шучу
Так тем более хорошо - просто удалите из функции аргумент $day и замените его в реализации функции на единичку - чтобы не путать пользователя вашей замечательной функции
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
jfr
Отправлено: 23 Марта, 2010 - 21:59:26
Посетитель
Покинул форум
Сообщений всего: 332
Дата рег-ции: Март 2010 Откуда: Таджикистан, Худжанд
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
jfr Да так заметно лучше - у нас с вами получились почти одинаковые функции Только мы не учли один момент например если масяц начинается со вторника а мы ищем среду то превая среда будет иметь индекс 0 - а если мы ищем первый понедельник по он будет иметь индекс 1 - так что надо долбавить проверку на отричательность разности искомого и первого дня недели и если оно отрицательно но вычесть единицу из номера искомого дня
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
jfr
Отправлено: 24 Марта, 2010 - 17:32:22
Посетитель
Покинул форум
Сообщений всего: 332
Дата рег-ции: Март 2010 Откуда: Таджикистан, Худжанд
Помог: 0 раз(а)
[+]
оказывается, да точно не учли это, сам даже не заметил
JustUserR
Отправлено: 24 Марта, 2010 - 17:59:04
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
jfr пишет:
Оказывается, да точно не учли это, сам даже не заметил
Да уж В моем примере эта штука исправляется с помощью тренарного оператра ?: в первой сточке - сделать проверку на отрицательное значение и все
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Gover
Отправлено: 24 Марта, 2010 - 20:23:52
Новичок
Покинул форум
Сообщений всего: 25
Дата рег-ции: Февр. 2007 Откуда: Беларусь
Помог: 0 раз(а)
Блин, не думал, что тема разовьется до таких масштабов...
jfr
Отправлено: 24 Марта, 2010 - 21:08:52
Посетитель
Покинул форум
Сообщений всего: 332
Дата рег-ции: Март 2010 Откуда: Таджикистан, Худжанд
Покинул форум
Сообщений всего: 332
Дата рег-ции: Март 2010 Откуда: Таджикистан, Худжанд
Помог: 0 раз(а)
[+]
MovEAX, это Чемпион не мог осмыслить , тоесть не мои комментария, то что написано у тебя
Ну что касается Strtotime, она одна ничего не вычисляет
movEAX
Отправлено: 24 Марта, 2010 - 21:31:08
Частый посетитель
Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009
Помог: 16 раз(а)
jfr пишет:
Ну что касается Strtotime, она одна ничего не вычисляет
да она тут собственно не причем) больше внимание стоит уделить abs(), т.к. отпадает необходимость в условных операторах для проверки на отрицательность. Остается необходимым лишь проверка на диапазон допустимых значений.
jfr пишет:
тоесть не мои комментария, то что написано у тебя
не суть важна чьи это комментарии (честно, я даже не смотрел), я хотел показать простой вариант решения проблемы.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.