Linuchs: Feiertage in einem internationalen Projekt

Beitrag lesen

Wenn der Besucher seinen Browser bevorzugt auf Nederlands eingestellt hat, sollte er die Bezeichnungen auch in Nederlands bekommen, finde ich. Hier also Goede Vrijdag.

Ich glaube, das überfordert meine Möglichkeiten.

Hier mein PHP-Code zur Erkennung der Feiertage:

// ===============================================================  
   function welcherFeiertag ( $jjjj_mm_tt, $land_kz, $region_kz )  
// ===============================================================  
{  
  $fixe = array (  
   array( '01-01', '',   '', 'Neujahr' )  
  ,array( '01-06', 'D',  '', 'Hl. drei Könige' )  
  ,array( '04-30', 'NL', '', 'Koninginnedag' )  
  ,array( '05-01', 'A',  '', 'Staatsfeiertag (A)' )  
  ,array( '05-01', '',   '', 'Maifeiertag' )  
  ,array( '05-05', 'NL', '', 'Befrijdingsdag' )  
  
  ,array( '08-01', 'CH', '', 'Bundesfeier (CH)' )  
  
  ,array( '10-03', 'D',  '', 'Dt. Einheit' )  
  ,array( '10-26', 'A',  '', 'Nationalfeiertag (A)' )  
  ,array( '10-31', '',   '', 'Reformationstag' )  
  
  ,array( '11-01', '',    '', 'Allerheiligen' )  
  
  ,array( '12-08', 'A',  '', 'Mariä Empfängnis (A)' )  
  ,array( '12-25', 'A',  '', 'Christtag (A)' )  
  ,array( '12-25', 'NL', '', '1. Kerstdaag' )  
  ,array( '12-25', '',   '', '1. Weihnachtstag' )  
  ,array( '12-26', 'A',  '', 'Stefanitag (A)' )  
  ,array( '12-26', 'NL', '', '2. Kerstdaag' )  
  ,array( '12-26', '',   '', '2. Weihnachtstag' )  
  );  
  
  $variable = array (  
   array( '2014-04-18', '',  '', 'Karfreitag' )  
  ,array( '2014-04-20', 'NL','', 'Eerste Paasdag' )  
  ,array( '2014-04-20', '',  '', 'Ostersonntag' )  
  ,array( '2014-04-21', 'NL','', 'Tweede Paasdag' )  
  ,array( '2014-04-21', '',  '', 'Ostermontag' )  
  ,array( '2014-05-29', 'NL','', 'Hemelfaartsdag' )  
  ,array( '2014-05-29', '',  '', 'Christi Himmelfahrt' )  
  ,array( '2014-06-08', 'NL','', 'Pinksteren' )  
  ,array( '2014-06-08', '',  '', 'Pfingstsonntag' )  
  ,array( '2014-06-09', 'NL','', 'Pinksteren' )  
  ,array( '2014-06-09', '',  '', 'Pfingstmontag' )  
  ,array( '2014-06-19', '',  '', 'Fronleichnam' )  
  ,array( '2014-11-30', '',  '', '1. Advent' )  
  ,array( '2014-12-07', '',  '', '2. Advent' )  
  ,array( '2014-12-14', '',  '', '3. Advent' )  
  ,array( '2014-12-21', '',  '', '4. Advent' )  
  
  ,array( '2015-04-03', '',  '', 'Karfreitag' )  
  ,array( '2015-04-05', 'NL','', 'Eerste Paasdag' )  
  ,array( '2015-04-05', '',  '', 'Ostersonntag' )  
  ,array( '2015-04-06', 'NL','', 'Tweede Paasdag' )  
  ,array( '2015-04-06', '',  '', 'Ostermontag' )  
  ,array( '2015-05-10', '',  '', 'Muttertag' )  
  ,array( '2015-05-14', 'NL','', 'Hemelfaartsdag' )  
  ,array( '2015-05-14', '',  '', 'Christi Himmelfahrt' )  
  ,array( '2015-05-24', 'NL','', 'Pinksteren' )  
  ,array( '2015-05-24', '',  '', 'Pfingstsonntag' )  
  ,array( '2015-05-25', 'NL','', 'Pinksteren' )  
  ,array( '2015-05-25', '',  '', 'Pfingstmontag' )  
  ,array( '2015-06-04', '',  '', 'Fronleichnam' )  
  ,array( '2015-08-15', '',  '', 'Mariä Himmelfahrt' )  
  ,array( '2015-11-18', '',  '', 'Buß- und Bettag' )  
  ,array( '2015-11-29', '',  '', '1. Advent' )  
  ,array( '2015-12-06', '',  '', '2. Advent' )  
  ,array( '2015-12-13', '',  '', '3. Advent' )  
  ,array( '2015-12-20', '',  '', '4. Advent' )  
  
  ,array( '2016-03-25', '',  '', 'Karfreitag' )  
  ,array( '2016-03-27', 'NL','', 'Eerste Paasdag' )  
  ,array( '2016-03-27', '',  '', 'Ostersonntag' )  
  ,array( '2016-03-28', 'NL','', 'Tweede Paasdag' )  
  ,array( '2016-03-28', '',  '', 'Ostermontag' )  
  ,array( '2016-05-08', '',  '', 'Muttertag' )  
  ,array( '2016-05-05', 'NL','', 'Hemelfaartsdag' )  
  ,array( '2016-05-05', '',  '', 'Christi Himmelfahrt' )  
  ,array( '2016-05-15', 'NL','', 'Pinksteren' )  
  ,array( '2016-05-15', '',  '', 'Pfingstsonntag' )  
  ,array( '2016-05-16', 'NL','', 'Pinksteren' )  
  ,array( '2016-05-16', '',  '', 'Pfingstmontag' )  
  ,array( '2016-05-26', '',  '', 'Fronleichnam' )  
  ,array( '2016-08-15', '',  '', 'Mariä Himmelfahrt' )  
  ,array( '2016-11-16', '',  '', 'Buß- und Bettag' )  
  ,array( '2016-11-27', '',  '', '1. Advent' )  
  ,array( '2016-12-04', '',  '', '2. Advent' )  
  ,array( '2016-12-11', '',  '', '3. Advent' )  
  ,array( '2016-12-18', '',  '', '4. Advent' )  
  );  
  
  if ( $jjjj_mm_tt > ' ' )  
  {  
    // fixe Feiertage  
    $mm_tt = substr( $jjjj_mm_tt,5,5 );  
    for ( $i=0; $i<count($fixe); $i++ )  
    {  
      if ( $mm_tt == $fixe[$i][0] && ( !$fixe[$i][1] || $land_kz == $fixe[$i][1] ))  
      {  
        return $fixe[$i][3]; break;  
      }  
    }  
  
    // variable Feiertage  
    for ( $i=0; $i<count($variable); $i++ )  
    {  
      if ( $jjjj_mm_tt == $variable[$i][0] && ( !$variable[$i][1] || $land_kz == $variable[$i][1] ))  
      {  
        return $variable[$i][3];  
        break;  
      }  
    }  
  }  
  return FALSE;  
}  

Linuchs