Einfaches Beispiel um die Anzahl der Tage bis zu einem jährlich wiederkehrenden Ereignis wie Geburtstag, Weihnachten, Silvester o.ä. zu berechnen.
<?php
/**
* Anzeige der Anzahl der Tage bis zum nächsten Weihnachtsfest
*/
$theDay = 24;
$theMonth = 12;
$theYear = date('Y');
$diff = ceil((mktime(0,0,0,$theMonth, $theDay, $theYear) - time())/86400);
if ($diff < 0){
// in diesem Jahr ist der Termin bereits verstrichen, also das nächste Jahr berechenen
$diff = ceil((mktime(0,0,0,$theMonth, $theDay, $theYear+1) - time())/86400);
}
if ($diff == 0){
$msg = 'Heute ist Weihnachten.';
}elseif($diff == 1){
$msg = 'Morgen ist Weihnachten. Geschenke einpacken!';
}elseif($diff < 14){
$msg = sprintf('Achtung, in %d Tagen ist Weihnachten. Geschenke besorgen!', $diff);
}else{
$msg = sprintf('Noch %d Tage bis Weihnachten.', $diff);
}
printf ('<h1>%s</h1>', $msg);
?>