Esempio n. 1
0
function CheckDate1($d)
{
    $response = 0;
    if ($d->getMonth() > 12) {
        $response = 1;
    }
    $numberOfDays = DaysInMonth($d);
    if ($d->getDay() > $numberOfDays['days']) {
        $response = 2;
    }
    return $response;
}
Esempio n. 2
0
function NextDate1(&$d)
{
    $nrOfDays = DaysInMonth($d);
    if ($d->getDay() == 31 && $d->getMonth() == 12) {
        $d->setDay(1);
        $d->setMonth(1);
        $d->setYear($d->getYear() + 1);
    } elseif ($d->getDay() == $nrOfDays['days']) {
        $d->setDay(1);
        $d->setMonth($nrOfDays['month'] + 1);
    } else {
        $d->setDay($d->getDay() + 1);
    }
}
Esempio n. 3
0
function PrevDate1($d)
{
    $checkDate = CheckDate1($d);
    if ($checkDate != 0) {
        return $d;
    } else {
        if ($d->getMonth() == 1 && $d->getDay() == 1) {
            echo '1';
            $d->setDay(31);
            $d->setMonth(12);
            $d->setYear($d->getYear() - 1);
        } elseif ($d->getDay() == 1 && $d->getMonth() != 1) {
            echo '2';
            $prevMonth = new TDate(10, $d->getMonth() - 1, $d->getYear());
            $days = DaysInMonth($prevMonth);
            $d->setMonth($d->getMonth() - 1);
            $d->setDay($days['days']);
        } else {
            echo '3';
            $d->setDay($d->getDay() - 1);
        }
    }
    return $d;
}
Esempio n. 4
0
function aumenta_fecha($fecha_Inicio, $inc)
{
    $fecha_aux = split('/', $fecha_Inicio);
    if ($fecha_aux[0] + $inc <= DaysInMonth($fecha_aux[1], $fecha_aux[2])) {
        $fecha_aux[0] = $fecha_aux[0] + $inc;
    } else {
        if ($fecha_aux[0] + $inc > DaysInMonth($fecha_aux[1], $fecha_aux[2])) {
            if ($fecha_aux[1] + 1 < 13) {
                $aux = $fecha_aux[0] + $inc - DaysInMonth($fecha_aux[1], $fecha_aux[2]);
                $fecha_aux[1] = $fecha_aux[1] + 1;
                $fecha_aux[0] = $aux;
            } else {
                if ($fecha_aux[1] + 1 >= 13) {
                    $aux = $fecha_aux[0] + $inc - DaysInMonth($fecha_aux[1], $fecha_aux[2]);
                    $fecha_aux[2] = $fecha_aux[2] + 1;
                    $fecha_aux[1] = 1;
                    $fecha_aux[0] = $aux;
                }
            }
        }
    }
    $fecha = $fecha_aux[0] . "/" . $fecha_aux[1] . "/" . $fecha_aux[2];
    return $fecha;
}
Esempio n. 5
0
function disminuye_fecha222222222222222($fecha_Inicio, $inc)
{
    $fecha_aux = split('/', $fecha_Inicio);
    $mesAnterior = $fecha_aux[1] - 1;
    $anioAnterior = $fecha_aux[2] - 1;
    //if ($fecha_aux[0] + $inc <= DaysInMonth($fecha_aux[1],$fecha_aux[2]))
    if ($fecha_aux[0] - $inc > 0) {
        $fecha_aux[0] = $fecha_aux[0] - $inc;
    } else {
        if ($fecha_aux[0] - $inc <= 0) {
            //DaysInMonth($mesAnterior,$fecha_aux[2])
            //if ($fecha_aux[1] + 1 < 13)
            if ($fecha_aux[1] - 1 > 0) {
                $aux = $fecha_aux[0] - $inc + DaysInMonth($mesAnterior, $fecha_aux[2]);
                $fecha_aux[1] = $fecha_aux[1] - 1;
                $fecha_aux[0] = $aux;
            } else {
                if ($fecha_aux[1] - 1 <= 0) {
                    $aux = $fecha_aux[0] - $inc + DaysInMonth(12, $anioAnterior);
                    $fecha_aux[2] = $anioAnterior;
                    $fecha_aux[1] = 12;
                    $fecha_aux[0] = $aux;
                }
            }
        }
    }
    $fecha = $fecha_aux[0] . "/" . $fecha_aux[1] . "/" . $fecha_aux[2];
    return $fecha;
}
Esempio n. 6
0
<?php

/**
 * Using the TDate type and the LeapYear function (see Param59), write an integer function DaysInMonth(D)
 * with a parameter D of TDate type. The function returns the amount of days for the month of date D. Output
 * the return values of this function for five given dates (all dates are assumed to be correct).
 */
include 'helper.php';
echo '<div style="display: none;">';
require_once '59.php';
echo '</div >';
use ParamPhpJavaScrit\TDate\TDate;
/**
 * @param TDate $D
 * @return mixed
 */
function DaysInMonth($D)
{
    $nrOfDays = $D->isLeapYear() ? 29 : 28;
    $days = array(1 => 31, 2 => $nrOfDays, 3 => 31, 4 => 30, 5 => 31, 6 => 30, 7 => 31, 8 => 31, 9 => 30, 10 => 31, 11 => 30, 12 => 31);
    //return 'month '.$D->getMonth().' have '.$days[$D->getMonth()].' DAYS';
    return array('month' => $D->getMonth(), 'days' => $days[$D->getMonth()]);
}
$a = DaysInMonth(new TDate(12, 2, 2014));
var_dump($a);