Funktion: tagimjahr() scheitert bei PHP 5.3 von1&1 an: gregoriantojd() |
<?PHP
// tagimjahr() ------------------------------------------------------------------ mit gregoriantojd // // Rückgabe: Anzahl der Tage im Jahr bis zum angegebenen Datum (1.Januar= 1) function tagimjahr1 ($tag, $mon, $jahr){ return gregoriantojd($mon, $tag, $jahr)-gregoriantojd(1, 1, $jahr)+1; } // tagimjahr() ------------------------------------------------------------------ alternativ // // (nur für tagimjahr2()) $monattage = array(0,31,28,31,30,31,30,31,31,30,31,30,31); // (nur für tagimjahr2()) .. Berechnet ob das Jahr ein Schaltjahr ist function schaltjahr($jahr){ if(($jahr % 400) == 0 || (($jahr % 4) == 0 && ($jahr % 100) != 0)) return 1; else return 0; } // Rückgabe: Anzahl der Tage im Jahr bis zum angegebenen Datum (1.Januar= 1) function tagimjahr2($tag, $mon, $jahr){ global $monattage; for($i=1; $i<$mon; $i++){$tagimjahr=$tagimjahr+$monattage[$i];} $tagimjahr=$tagimjahr+$tag; if($mon>2) $tagimjahr=$tagimjahr+schaltjahr($jahr); return $tagimjahr; } // ---------------------------------------- Test --------------------------- // $tag=31; $mon=12; $jahr=2004; echo $jahr.' -> '.schaltjahr($jahr).'<BR>'; echo tagimjahr1($tag,$mon,$jahr).'<BR>'; echo tagimjahr2 ($tag,$mon,$jahr).'<BR>'; ?> |