PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Raus finden ob Tag Feiertag ist?


Moses
24.10.2002, 12:14:44
Hallo,
mal 'ne kurze Frage. Ist es möglich per PHP (o.ä.) rauszufinden ob ein bestimmter Tag ein Feiertag ist?
- Ich weiß da muß man natürlich unterscheiden zwischen den einzelnen Ländern und Religionen.
mit checkdate() und getdate() kann man ja rausfinden welcher Wochentag ist, wäre aber schön, wenn man zusätzlich zumindest die festen Feiertage rausfinden kann wie Ostern, Pfingsten, etc. am besten wäre es natürlich wenn man alle Feiertage rausfinden kann (z.B. National Feiertag Frankreich, jüdische Feiertage, islamische Feiertage, etc.)
Aber ich gehe mal davon aus, daß es dafür keine Funktion gibt, oder.

Grüße,
Moses

MiH
24.10.2002, 12:30:47
ostern:
http://www.php.net/manual/en/function.easter-date.php

weihnachten: 24.12.
sylvester: 31.12.

für nationale feiertage musst du einen eigenen array anlegen.

Moses
25.10.2002, 15:28:56
Danke erstmal für die "Ostern-Funktion" - so etwas in der Art habe ich mir vorgestellt nur eben für alle Feiertage....
Muß ich mir wohl selber erstellen,
aber nur zur Info:
weder der 24. noch der 31.12. sind Feiertage (leider...)

Grüße,
Moses

markus.thiede
28.10.2002, 09:38:29
Wenn du Ostern schon mal hast kannst du Feiertage die an bestimmten wochentagen sind bsp. Rosenmontag Ganz leicht finden du muß nur rausfinden wie viele tage Dazwischen sind.

Matthias
28.10.2002, 17:37:26
Hab das schon mal gemacht. Weis aber nicht mehr wie aktuell diese Tage auf die ganze BRD sind. Für NRW gelten die auf jeden Fall.

Die Festen Feiertage sollten ja klar sein.
Neujahr, Tag der Arbeit, Tag der deutschen Einheit, 1. Weihnachtsfeiertag, 2. Weihnachtsfeiertag.

Dazu kommen die Beweglichen.<?PHP
$year=2002;
//Bewegliche Feiertage
//Ostersonntagberechnung
$g=($year%19)+1;
$h=floor($year/100)+1;
$x=floor((3*$h)/4)-12;
$z=floor((8*$h+5)/25)-5;
$d=floor((5*$year)/4)-$x-10;
if((((11*$g+20+$z-$x)%30)==25 && $g>11) || ((11*$g+20+$z-$x)%30)==24) $e=((11*$g+20+$z-$x)%30)+1;
else $e=(11*$g+20+$z-$x)%30;
if((44-$e)<21) $t=44-$e+30;
else $t=44-$e;
$t=$t+7-(($d+$t)%7);
if($t>31) $ostersonntag=array($t-31,"4");
else $ostersonntag=array($t,"3");
echo"Ostersonntag: ".date("d.m.Y",mktime(0,0,0,$ostersonntag[1],$ostersonntag[0],$year))."<br>";
//Ostermontag
echo"Ostermontag: ".date("d.m.Y",mktime(0,0,0,$ostersonntag[1],$ostersonntag[0]+1,$year))."<br>";
//Karfreitag
echo"Karfreitag: ".date("d.m.Y",mktime(0,0,0,$ostersonntag[1],$ostersonntag[0]-2,$year))."<br>";
//Himmelfahrt
echo"Himmelfahrt: ".date("d.m.Y",mktime(0,0,0,$ostersonntag[1],$ostersonntag[0]+39,$year))."<br>";
//Pfingstmontag
echo"Pfingstmontag: ".date("d.m.Y",mktime(0,0,0,$ostersonntag[1],$ostersonntag[0]+50,$year))."<br>";
//Fronleichnam
echo"Fronleichnam: ".date("d.m.Y",mktime(0,0,0,$ostersonntag[1],$ostersonntag[0]+60,$year))."<br>";
?>

Moses
29.10.2002, 16:52:51
VIELEN DANK!
Da werd ich mir die restlichen Tage auch noch zusammenbasteln.... (bei uns in Bayern gibt es ja Gott sei Dank den ein oder anderen zusätzlichen Tag ;-)

Grüße,
Moses

André H.
30.10.2002, 11:56:55
Hi,
hier gibt's eine kleine Liste aller möglichen Feiertage in Deutschland:
www.feiertage.net