Как по номеру дня в году узнать число месяца

Тема в разделе "PHP", создана пользователем phillip, 21 ноя 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. phillip

    phillip

    Регистр.:
    4 сен 2007
    Сообщения:
    413
    Симпатии:
    15
    Допустим у нас есть число 7. Это седьмой день в году, соответст. 7 января. Есть число 33. Соответственно это 2 февраля. Как узнать допустим какой день относится к числу 243
     
  2. t3s

    t3s

    Регистр.:
    16 фев 2008
    Сообщения:
    719
    Симпатии:
    290
    поскольку для марта вот такой пример
    может иметь разные значения, то предполагаем, что год нам известен, верно?

    PHP:
    $days_number 243;

    $my_date date('d.m.y'strtotime("31.12.2010 + $days_number day"));

    print 
    $my_date;
     
    phillip нравится это.
  3. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    вариант с mktime
    PHP:
    //день месяца с начала известной даты
    echo date('j'mktime0001231+2432009));
    //и наоборот сколько дней до известной даты с начала года
    echo date('z'mktime0001231+2432009))+1;
     
    phillip нравится это.
  4. B0nuse

    B0nuse Постоялец

    Регистр.:
    6 июн 2009
    Сообщения:
    105
    Симпатии:
    21
    PHP:
    $day=243// номер дня
    $year=2010// номер года, если для текущего года, то $year=date("Y");
    $dayyear=(mktime(0,0,1,1,1,$year+1)-mktime(0,0,1,1,1,$year))/(60*60*24);
    if (
    $day<=$dayyear) {
    $str=date("d-m-y",mktime(0,0,0,1,0,$year)+$day*24*60*60);
    echo 
    $day." дню в ".$year." году соответствует дата: ".$str;
    }else{
    echo 
    "В ".$year." году всего дней: ".$dayyear;
    }
     
    phillip нравится это.
Статус темы:
Закрыта.