| imho.ws |
![]() |
|
|
|
# 1 |
|
Guest
Сообщения: n/a
|
php - date() - скрипт
Вообщем, такая трабла.
у меня есть дата date("d.m.Y",strtotime($odate2)) например, 27.06.07 к этой дате надо прибавить количество дней для выполенения заказа $sdacha например, 23 дня во-первых тупым сложением, получается 50.06.07 проблему можно избежать, переведя дату в сукунду от 1970 года. Это первое, что я не знаю как сделать, чтобы получить нормальную дату. вторая - просто мега проблема как мне кажется, это то что $sdacha==23 дня - не просто дня, а рабочих дня. т.е. мне надо получить готовую дату, потом определить все дни между $odate2 и готовой датой, и если там есть суббота, воскресение, то прибавить эти дни как рабочие, и снова проверить, если снова попадают выходные, то снова приплюсовывать к дате. я, вообще, в ступоре. Помогите, плз, кто-нить решить задачу. добавлено через 21 минуту и ещё. желательно предусмотреть такую штуку. допустим я в ручную вобью все праздники, например , если в промежуток попадает дата 8.03.07, то +1 рабочий день. как енто сделать? (( |
|
|
# 2 |
|
МОД-Оператор ЭВМ
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Праздники можно заколотить в массив, и потом просто проверить дату на наличие таковой в этом массиве. С выходными, особой проблемы нет, т.к. та же date() умеет возвращать день недели. А вот что ты хочешь сделать я не очень понял. Если просто накинуть 23 дня, но так чтобы дата не попала на выходные, то накинь а потом прибавляй по дню пока не попадёшь на будний день.
|
|
|
|
|
# 4 |
|
Guest
Сообщения: n/a
|
на первом своём вопросе опять натолкнулся на косяк.
пишу: $plansdacha=$sdacha*24*3600; $plan=strtotime($odate2); $plannew=date("d.m.Y",strtotime(($plan-$plansdacha))); мне выводит при условии, что $sdacha=1 рабочий день, $odate2=26.06.2007: 86400 1182801600 31.03.118275 подскажите, где я накосячил, плз Последний раз редактировалось John_Cherep; 29.06.2007 в 13:32. |
|
|
# 5 |
|
::VIP::
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Код:
$plannew=date("d.m.Y",strtotime(($plan-$plansdacha)));
вот так правильно Код:
$plansdacha=$sdacha*24*3600;
$plan=strtotime($odate2);
$plannew=date("d.m.Y",$plan-$plansdacha);
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti |
|
|
|
|
# 7 |
|
Junior Member
Регистрация: 09.08.2005
Адрес: Свердловская область
Сообщения: 112
![]() |
PHP код:
|
|
|
|
|
# 8 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Используй http://pear.php.net/Date и не парься.
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|
|
|
# 10 |
|
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
|