количество недель

Mercury

Новичок
количество недель

как узнать количество недель в текущем месяце.Точнее Все недели в формате (45.46.47...)
 

AmdY

Пью пиво
Команда форума
плохо искал, там есть всё что тебе нужно. вот только непонятно что тебе нужно, колличество недель в месяце понятие неоднозначное
 

pilot911

Новичок
как всегда, куча умников, и ни одного дельного совета

я бы сделал так:

PHP:
$month	=	'02'; //номер месяца
$w1	=	strftime("%W",strtotime("$month/01/2007"));
$w2	=	strftime("%W",strtotime("$month/08/2007"));
$w3	=	strftime("%W",strtotime("$month/16/2007"));
$w4	=	strftime("%W",strtotime("$month/25/2007"));
 

Mercury

Новичок
Автор оригинала: AmdY
плохо искал, там есть всё что тебе нужно. вот только непонятно что тебе нужно, колличество недель в месяце понятие неоднозначное
Хотя бы числовые значения недель в данный месяц (45,46,47,48...)
 

Фанат

oncle terrible
Команда форума
Mercury, а дальше арифметика. или это для тебя слишком сложно?
 

AmdY

Пью пиво
Команда форума
1 - первый день месяца, t - последний день, остаётся узнать какие это недели и отнять
 

Фанат

oncle terrible
Команда форума
на самом деле, 1 - это не только 1 день месяца, но и день, следующий за последним днем предыдущего месяца. Но это уже не для средних умов, да =)
 

SiMM

Новичок
pilot911> я бы сделал так
и пропустили бы последнюю неделю, если 25е, к примеру - воскресенье. Или 8е. Или 16е.
 

pilot911

Новичок
Автор оригинала: SiMM
pilot911> я бы сделал так
и пропустили бы последнюю неделю, если 25е, к примеру - воскресенье. Или 8е. Или 16е.
да нет, неправда


%W - порядковый номер недели в текущем году. Первым днем первой недели в году считается первый понедельник года.
-~{}~ 08.11.08 14:47:

фишка в чем?

вот НГ наступил в среду

куда отнести эту неделю ? по всей видимости, к предыдущему году

то есть первая неделя этого года, начавшегося в среду, будет через 4 дня - в понедельник
 

pilot911

Новичок
Автор оригинала: Mercury
почему неправда,а ты попробуй это в коде
в общем, ты прав

-~{}~ 08.11.08 15:36:

тогда в выражении

можно заменить %W на %V

%V - порядковый номер недели в году по стандарту ISO 8601:1988 от 01 до 53, где 1 соответствует первой неделе в году, в которой как минимум 4 дня принадлежат этому году. Первым днем недели считается понедельник. (Используйте %G or %g для определения соответствующего года)


и оно приобретет вид

$w4 = strftime("%W",strtotime("$month/28/2007"));
 

SiMM

Новичок
> тогда в выражении можно заменить %W на %V
Вы опять нифига не поняли - лучше воздержитесь от комментариев, пока не поймёте.
 

pilot911

Новичок
Автор оригинала: SiMM
> тогда в выражении можно заменить %W на %V
Вы опять нифига не поняли - лучше воздержитесь от комментариев, пока не поймёте.
ну если вы поняли, что вам мешает нам рассказать ?
 

SiMM

Новичок
> и пропустили бы последнюю неделю, если 25е, к примеру - воскресенье. Или 8е. Или 16е.
Арифметике обучать не буду - в школе научат.
 

pilot911

Новичок
Автор оригинала: SiMM
> и пропустили бы последнюю неделю, если 25е, к примеру - воскресенье. Или 8е. Или 16е.
Арифметике обучать не буду - в школе научат.
я же добавил строчку ниже, и число изменил на 28, что однозначно говорит о возможности использования %V

%V - порядковый номер недели в году по стандарту ISO 8601:1988 от 01 до 53, где 1 соответствует первой неделе в году, в которой как минимум 4 дня принадлежат этому году. Первым днем недели считается понедельник. (Используйте %G or %g для определения соответствующего года)
 

Viktor_Rez

Новичок
Неделя – это единица времени – период из семи дней. Это самая большая единица времени, содержащая точное кол-во дней.

Исходя из того, что минимальное возможное кол-во дней в месяце – 28, а максимальное – 31, можно сделать вывод – целое количество недель (4 недели) возможно только при 28-и днях в месяце.

Понедельник, строго - день недели между воскресеньем и вторником, но ни как не начало недели. А вот с точки зрения социума, понедельник начало рабочей недели.
 
Сверху