Calcolo scadenza carta d'identità

spacca!  0 scarso!  0 versione stampa invia per email scheda utente totale visite  119
Calcoliamo la data di scadenza del documento di identità partendo dalla data di rilascio del documento e dalla data di nascita del titolare.
Le informazioni per il calcolo sono disponibili su wikipedia
<?php

$dataNascita = "1977-01-01";
$dataRilascioDocumento = "2011-04-14";

$dataDecretoLegge = "2012-02-09";
$natoil = new DateTime($dataNascita);
$oggi = new DateTime(date("Y-m-d"));
$diff = $natoil->diff($oggi);
$anniValidita = 5;
if ($diff->y >= 18) {
    $anniValidita = 10;
} else if ($diff->y <= 3) {
    $anniValidita = 3;
}
$exp = explode("-", $dataRilascioDocumento);
$timeScadenza = mktime(0, 0, 0, $exp[1], $exp[2] - 1, $exp[0] + $anniValidita);
// 9 febbraio 2012
if (new DateTime($dataRilascioDocumento) > new DateTime($dataDecretoLegge)) {
    $dataScadenza = new DateTime(date("Y-m-d", $timeScadenza));
    $dataCompleanno = new DateTime($dataNascita);
    $dataCompleanno->modify('+' . $dataScadenza->format('Y') - $dataCompleanno->format('Y') . ' years');
    if ($dataCompleanno < $dataScadenza) {
        $dataCompleanno->modify('+1 year');
    }
    $scadenza = $dataCompleanno->getTimestamp();
} else {
    $scadenza = $timeScadenza;
}

echo "il documento scade il " . date("d/m/Y", $scadenza);
 
 

Inserisci un commento

non sei loggato

CAPTCHA