определение дня, месяца, года от 1900 до 1970 года

webwin

Новичок
определение дня, месяца, года от 1900 до 1970 года

есть количество дней после 1900 года.
Как можно определить какое число припадает например на 1574 день после 1900 года ?
 

webwin

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

Фанат

oncle terrible
Команда форума
есть. найти в сети алгоритмы и написать ручками. думаю, там совсем немного
 

webwin

Новичок
нашел
PHP:
function getDateArray($xls_date){
    $ret = array();

    // Ошибка высокосного года
    if ($xls_date == 60) {

        $ret['day']   = 29;
        $ret['month'] = 2;
        $ret['year']  = 1900;
        return $ret;

    } else if ($xls_date < 60) {
        // 29-02-1900 ошибка
        $xls_date++;
    }

    // Изменения к Юлианскому  DMY вычислению с дополнением 2415019
    $l = $xls_date + 68569 + 2415019;
    $n = (int)(( 4 * $l ) / 146097);
    $l = $l - (int)(( 146097 * $n + 3 ) / 4);
    $i = (int)(( 4000 * ( $l + 1 ) ) / 1461001);
    $l = $l - (int)(( 1461 * $i ) / 4) + 31;
    $j = (int)(( 80 * $l ) / 2447);
    $ret['day'] = $l - (int)(( 2447 * $j ) / 80);
    $l = (int)($j / 11);
    $ret['month'] = $j + 2 - ( 12 * $l );
    $ret['year'] = 100 * ( $n - 49 ) + $i + $l;

    return $ret;
}
 
Сверху