Номер недели в месяце

andrewww

Новичок
Номер недели в месяце

Народ, подскажите как определить номер недели в текущем месяце зная "int timestamp"

P.s. я так понимаю от "W - ISO-8601 номер недели в году, недели начинаются с понедельника/Monday (введено в PHP 4.1.0)" надо копать но не получается .....
 

andrewww

Новичок
пробовал для некоторых дат подходит, а дле каких - то нет ....
универсальное не могу придумать
 

Фанат

oncle terrible
Команда форума
как ты пробовал?
для каких не подходит?
что между ними общее?
 

Panchous

Павел
( (кол-во дней в мес) - (текущее число) ) / (кол-во дней в неделе)
:)
 

andrewww

Новичок
13.06.2006

$dint=mktime (0,0,0,$_POST['mm3'],$_POST['dd3'],$_POST['yy3']);
$ned=ceil(date("W",$dint)/12);


---
$ned=2;
 

andrewww

Новичок
Автор оригинала: Panchous
( (кол-во дней в мес) - (текущее число) ) / (кол-во дней в неделе)
:)
округлять ceil ?

-~{}~ 13.06.06 14:18:

Автор оригинала: Romantik
[m]strftime[/m]
%W %V
неа

-~{}~ 13.06.06 14:19:

Автор оригинала: Panchous
( (кол-во дней в мес) - (текущее число) ) / (кол-во дней в неделе)
:)
18,06,2006 (3 неделя месяца)
30 дней

(30-18)/7=1,7 а надо 3
 

Фанат

oncle terrible
Команда форума
andrewww
ты должен приводить в пример не 19-е число.
а для случая, когда, допустим, 1-е - пятница, интересоваться номером недели 6-го числа.

-~{}~ 13.06.06 14:29:

Panchous
Я думаю, он сам догадается.
Задачка не сильно сложнее таблицы умножения.
 

andrewww

Новичок
Автор оригинала: Фанат
andrewww
ты должен приводить в пример не 19-е число.
а для случая, когда, допустим, 1-е - пятница, интересоваться номером недели 6-го числа.

-~{}~ 13.06.06 14:29:

Panchous
Я думаю, он сам догадается.
Задачка не сильно сложнее таблицы умножения.
не догадуюсь пока (((
 

Фанат

oncle terrible
Команда форума
ну, для идеального случая, когда первый день месяца совпадает с первым днём недели, решение тебе показали. так?
 

andrewww

Новичок
так ?

$dint=mktime (0,0,0,$_POST['mm3'],$_POST['dd3'],$_POST['yy3']);
$den=date("w",$dint)+1;
$plus=7-$den;
$ned=ceil((date("j",$dint)+$plus)/7);
 

andrewww

Новичок
вот так
$dint=mktime (0,0,0,$_POST['mm3'],$_POST['dd3'],$_POST['yy3']);
$den=date("w",$dint);
if($den==0) $den=7;
$plus=7-$den;
$ned=ceil((date("j",$dint)+$plus)/7);
 

Фанат

oncle terrible
Команда форума
я фигею, клава, с этой высшей математики.
нормальные, вроде бы, с виду люди, которые подобную задачку в жизни решат не задумываясь, рефлекторно - при попытке написать программу впадают в ступор.

andrewww
ты, по-моему, даже задачу сформулировать так и не смог, даже для себя.
скажи, 5-е число произвольного месяца - это какая неделя?

-~{}~ 13.06.06 14:48:

вот так
$dint=mktime (0,0,0,$_POST['mm3'],$_POST['dd3'],$_POST['yy3']);
$den=date("w",$dint);
if($den==0) $den=7;
$plus=7-$den;
$ned=ceil((date("j",$dint)+$plus)/7);
мляяяяяяя
ТЫ СЛОВАМИ МОЖЕШЬ НАПИСАТЬ, ЧТО ТЫ ДЕЛАЕШЬ?!
 
Сверху