Feiertage mit PHP errechnen
Autor: Ralf v.d.Mark
eingetragen: Freitag, 27. Juli 2007 um 14:48 Uhr (30/2007 Kalenderwoche)
geändert: Donnerstag, 14. Februar 2019 um 10:40 Uhr (7/2019 Kalenderwoche)
Keywords: Zeit berechunung date time Neujahr Hl. Drei Koenige Maifeiertag Mariae Himmelfahrt Tag der dt Einheit Reformationstag Allerheiligen Weihnachten Weiberfastnacht Wieverfastelovend Rosenmontag Aschermittwoch Karfreitag Ostern Himmelfahrt Buss- Buß- und Bett
Kategorien: PHP,
Text:
Um in meinem Online-Kalender (http://www.website-vdm.de/tools/ueberskaljahr.php) auch die Feiertage richtig dargestellt zu bekommen, habe ich mir diese beiden Funktionen gebastelt. Vielleicht hilft es einem von euch.
(HINWEIS: Die Funktion für den Buß- und Bettag ist noch nicht fertig!)
Quellcode:
<?php
/** ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
*
* @name datei: function_feiertage.php
* @abstract Diese Datei setzt feste Feiertage in den Jahren zw. 1970 u. 2037
* @author Ralf von der Mark, <ralf@Website-vdM.de>
* @copyright Copyright (c) 2007, Ralf von der Mark, Website-vdM.de
* @version Version vom 26.07.2007 um 09:44:29 Uhr
* ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ */
/** ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
* @example 1:
//in dieser Datei/Funktionen werden die Feiertage ermittelt und in ein Array gepummt
require_once 'function_feiertage.php';//Jahre zw. 1970 u. 2037
$feiertags_array = feiertage_setzen(2006, 'd.m.Y');
//Ergebnis (z.B.):
echo $feiertags_array['ostersonntag'];//zeigt: "16.04.06"
* @example 2:
//in dieser Datei/Funktionen werden die Feiertage ermittelt und in ein Array gepummt
require_once 'function_feiertage.php';//Jahre zw. 1970 u. 2037
$feiertags_array = feiertage_setzen();//ohne Variablen-Uebergabe
//Ergebnis (z.B.):
echo $feiertags_array['ostersonntag'];//zeigt im Jahr 2007: "08.04.07"
* @example 3 (hier mit Bezeichnung des Tages):
//in dieser Datei/Funktionen werden die Feiertage ermittelt und in ein Array gepummt
require_once 'function_feiertage.php';//Jahre zw. 1970 u. 2037
$feiertags_array = feiertage_mit_bezeichng();//ohne Variablen-Uebergabe
//Ergebnis (z.B.):
echo $feiertags_array['mariae_himmelf'][0];//zeigt: "dd.mm.jj"
echo $feiertags_array['mariae_himmelf'][1];//zeigt: "Mariä Himmelfahrt"
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ */
/** ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
- Feststehende Feiertage
Neujahr . . . . . . . . . . . . 1. 1.
Hl. Drei Koenige. . . . . . . . 6.1.
Maifeiertag . . . . . . . . . . 1. 5.
Mariae Himmelfahrt . . . . . . .15.8.
Tag der dt. Einheit . . . . . . 3.10.
Reformationstag . . . . . . . . 31.10.
Allerheiligen . . . . . . . . . 1.11.
Weihnachten . . . . . . . . . . 25/26.12.
- Bewegliche Feiertage
Weiberfastnacht (Wieverfastelovend) 52 Tage vor Ostern
Rosenmontag . . . . . . . . . .48 Tage vor Ostern
Aschermittwoch. . . . . . . . .46 Tage vor Ostern
Karfreitag . . . . . . . . . . 14.4.2006
Ostern . . . . . . . . . . . . 16./17.4.2006
Himmelfahrt. . . . . . . . . . 39 Tage nach Ostern (25.5.2006)
Buss- und Bettag . . . . . . . Mittwoch vor dem 23.11 (noch nicht umgesetzt!!)
Pfingsten . . . . . . . . . . 49 Tage nach Ostern (4./5.6.2006)
Fronleichnam . . . . . . . . . 60 Tage nach Ostern (15.6.2006 )
* ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ */
function feiertage_setzen($jahr = FALSE, $format_date ='d.m.y')
{
date_default_timezone_set('Europe/Berlin');
if (empty($jahr)) {
$jahr = date('Y');//Standard = aktuelles Jahr
} else {
$jahr = vermutung_sinniges_jahr($jahr);//Jahre zw. 1970 u. 2037
}//ENDE: else ==> if (!empty($jahr))
$anzahl_tage_bis_ostern = easter_days($jahr);//Anzahl der Tage zw. 21.03 und Ostersonntag
$arr_feiertage = array();//Array definieren
$arr_feiertage['date_aktuell'] = date($format_date);//aktuelles Datum
$arr_feiertage['tag_heute_im_jahre'] = date($format_date, mktime(12, 0, 0, date('m'), date('d'), $jahr));//'Genau heute im Jahre ...';
$arr_feiertage['neujahr'] = date($format_date, mktime(12, 0, 0, 1, 1, $jahr));//'Neujahr';
$arr_feiertage['hl_drei_koenige'] = date($format_date, mktime(12, 0, 0, 1, 6, $jahr));//'Hl. Drei Koenige';
$arr_feiertage['weiberfastnacht'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern - 52), $jahr));// 'Weiberfastnacht';
$arr_feiertage['rosenmontag'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern - 48), $jahr));// 'Rosenmontag';
$arr_feiertage['aschermittwoch'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern - 46), $jahr));// 'Aschermittwoch';
$arr_feiertage['karfreitag'] = date($format_date, mktime(12, 0, 0, 3, (19 + $anzahl_tage_bis_ostern), $jahr));// 'Karfreitag';
$arr_feiertage['ostersonntag'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern), $jahr));// 'Ostersonntag';
$arr_feiertage['ostermontag'] = date($format_date, mktime(12, 0, 0, 3, (22 + $anzahl_tage_bis_ostern), $jahr));// 'Ostermontag';
$arr_feiertage['himmelfahrt'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern + 39), $jahr));// 'Himmelfahrt';
$arr_feiertage['maifeiertag'] = date($format_date, mktime(12, 0, 0, 5, 1, $jahr));//'Maifeiertag';
$arr_feiertage['pfingstsonntag'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern + 49), $jahr));// 'Pfingstsonntag';
$arr_feiertage['pfingstmontag'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern + 50), $jahr));// 'Pfingstmontag';
$arr_feiertage['fronleichnam'] = date($format_date, mktime(12, 0, 0, 3, (21 + $anzahl_tage_bis_ostern + 60), $jahr));// 'Fronleichnam';
$arr_feiertage['mariae_himmelf'] = date($format_date, mktime(12, 0, 0, 8, 15, $jahr));//'Mariae Himmelfahrt';
$arr_feiertage['tag_dt_einheit'] = date($format_date, mktime(12, 0, 0, 10, 3, $jahr));//'dt.Einheit';
$arr_feiertage['reformationstag'] = date($format_date, mktime(12, 0, 0, 10, 31, $jahr));//'Reformationstag';
$arr_feiertage['allerheiligen'] = date($format_date, mktime(12, 0, 0, 11, 1, $jahr));//'Allerheiligen';
$arr_feiertage['heiligabend'] = date($format_date, mktime(12, 0, 0, 12, 24, $jahr));//'Heiligabend';
$arr_feiertage['buss_bettag'] = '21.11.07';//DUMMY //'Buss- u. Bettag 2007';//19.11.2008
$arr_feiertage['erster_weihnachtstag'] = date($format_date, mktime(12, 0, 0, 12, 25, $jahr));//'1. Weihn.';
$arr_feiertage['zweiter_weihnachtstag'] = date($format_date, mktime(12, 0, 0, 12, 26, $jahr));//'2. Weihn.';
$arr_feiertage['silvester'] = date($format_date, mktime(12, 0, 0, 12, 31, $jahr));//'Silvester';
return $arr_feiertage;
}//ENDE: function feiertage_setzen($jahr=FALSE, $format_date='d.m.y')
function feiertage_mit_bezeichng($jahr = FALSE, $format_date = 'd.m.y')
{
date_default_timezone_set('Europe/Berlin');
/** Da ich oft Probleme mit den verschienen Laengen der Bezeichnung habe,
* gibt es in dieser Version nun 3 verschiedene Schreibweisen und eine
* kleine Erklaerung zu dem Feiertag (aus Wikipedia)
* * [0] = dd.mm.yy (je nach Datumsformats-Vorgabe)
* * [1] = ganz kurz Schreibweise
* * [2] = etwas laengere Schreibweise
* * [3] = lange Schreibweise / komplette Bezeichnug
* * [4] = kleine Erklaerung zum Feiertag
*/
if (empty($jahr)) {
$jahr = date('Y');//Standard = aktuelles Jahr
} else {
$jahr = vermutung_sinniges_jahr($jahr);//Jahre zw. 1970 u. 2037
}//ENDE: else ==> if (!empty($jahr))
$arr_datums_zahlen = feiertage_setzen($jahr, $format_date);//Datumszahlen aufrufen
$arr_feiertage = array();//Array definieren
$arr_feiertage['date_aktuell'] = array(
date($format_date),
'Heute',
'Heute',
'der heutige Tag (der aktuelle Kalendertag)',
'Gegenwart, die heutige Zeit (Zeit in der wir leben)');
$arr_feiertage['tag_heute_im_jahre'] = array(
date($format_date, mktime(12, 0, 0, date('m'), date('d'), $jahr)),
'', //faellt mir nix ein
'Heute in '.$jahr,
'Heute im Jahre '.$jahr,
'Genau heute im Jahre '.$jahr);
$arr_feiertage['neujahr'] = array(
$arr_datums_zahlen['neujahr'],
'Neujahr',
'Neujahrstag',
'Neujahrstag, erste Tag des Kalenderjahres',
'Neujahr bzw. der Neujahrstag ist der erste Tag des Kalenderjahres. '
.'In nahezu allen Kulturen, jedoch mit teils sehr unterschiedlichen '
.'Zeitrechnungen und damit auch Kalendern, ist mit dem Neujahr ein '
.'Neujahrsfest verbunden, welches in der Folge auch zu '
.'unterschiedlichen Zeiten gefeiert wird.',
);
$arr_feiertage['hl_drei_koenige'] = array(
$arr_datums_zahlen['hl_drei_koenige'],
'Hl.Dr.Kön.',
'Heilige Drei Könige',
'Heilige Drei Könige, Erscheinung des Herrn',
'Epiphanias bzw. Epiphanie oder Erscheinung des Herrn ist der '
.'ursprüngliche und heute noch meist gebrauchte Namen '
.'des am 6. Januar, dem historischen Weihnachtsdatum, '
.'begangenen christlichen Festes. Im Volksmund und in vielen '
.'Kalendern ist es auch als Dreikönigsfest oder Theophanie, '
.'früher auch als "Groß-Neujahr" oder "Hoch-Neujahr" '
.'bekannt. In Österreich heißt dieser Tag auch '
.'Weihnachtszwölfer (zwölfter Tag nach dem 1. Weihnachtsfeiertag).',
);
$arr_feiertage['weiberfastnacht'] = array(
$arr_datums_zahlen['weiberfastnacht'],
'Weiberfastn.',
'Weiberfastnacht',
'Altweiberfastnacht',
'Weiberfastnacht, auch (Alt)weiberfasching, Altweiber, '
.'Weiberfasching, Altweiberfastnacht oder Wieverfastelovend '
.'(Kölsch) und Aalwiewer (Krieewelsch) genannt, '
.'markiert den Übergang vom Sitzungs- zum Straßenkarneval '
.'am Donnerstag vor Aschermittwoch.');//'Wieverfastelovend'
$arr_feiertage['rosenmontag'] = array(
$arr_datums_zahlen['rosenmontag'],
'Rosenmo.',
'Rosenmontag',
'Rosenmontag',
'Der Rosenmontag wird gemeinhin als Höhepunkt der Karnevalszeit, '
.'oft mit dem so genannten Rosenmontagszug, begangen. Er fällt '
.'auf den Tag nach dem kirchlichen Sonntag Estomihi; 48 Tage vor dem '
.'Ostersonntag. In so genannten Karnevalshochburgen geben am '
.'Rosenmontag als Brauchtumstag viele Arbeitgeber ihren '
.'Mitarbeitern zwar frei, einen gesetzlichen Feiertag stellt '
.'der Rosenmontag allerdings in keinem Bundesland dar.');
$arr_feiertage['aschermittwoch'] = array(
$arr_datums_zahlen['aschermittwoch'],
'Aschermi.',
'Aschermittwoch',
'Aschermittwoch',
'Der Aschermittwoch (lat.: Dies Cinerum) markiert im Christentum der '
.'Westkirche den Beginn des 40-tägigen Fastens und soll '
.'an die 40 Tage erinnern, die Mose in der Wüste verbracht hat. '
.'Die Fastenzeit umfasst 46 Kalendertage, und dauert bis Karsamstag, '
.'die sechs fastenfreien Sonntage (1.-5. Fastensonntag und Palmsonntag) '
.'sind abzuziehen. Die Ostkirche kennt dagegen keinen Aschermittwoch, '
.'weil ihre Fastenzeit bereits am Sonntagabend beginnt.');
$arr_feiertage['karfreitag'] = array(
$arr_datums_zahlen['karfreitag'],
'Karfreit.',
'Karfreitag',
'Karfreitag',
'Der Karfreitag (althochdeutsch "kara" = Klage, Kummer, Trauer), '
.'ist der Freitag vor Ostern. Die Christenheit gedenkt an diesem '
.'Tag des Kreuzestodes von Jesus Christus. Er folgt auf den '
.'Gründonnerstag und geht dem Karsamstag voraus.');
$arr_feiertage['ostersonntag'] = array(
$arr_datums_zahlen['ostersonntag'],
'Osterso.',
'Ostersonntag',
'Ostersonntag',
'Ostern ist das christliche Fest der Auferstehung Jesu Christi vom Tod. '
.'Diese geschah nach urchristlicher Glaubensüberzeugung '
.'(vgl. im Neuen Testament) "am dritten Tag" nach seinem Tod, '
.'wobei der Todestag als erster Tag zählte: also an dem '
.'Karfreitag folgenden Ostersonntag.');
$arr_feiertage['ostermontag'] = array(
$arr_datums_zahlen['ostermontag'],
'Ostermo.',
'Ostermontag',
'Ostermontag',
'Der Ostermontag gehört mit dem 26. Dezember und dem Pfingstmontag '
.'zu den zweiten Feiertagen an den drei christlichen Hauptfesten.');
$arr_feiertage['himmelfahrt'] = array(
$arr_datums_zahlen['himmelfahrt'],
'Chr.Himmelf',
'Chr. Himmelfahrt',
'Christi Himmelfahrt',
'Christi Himmelfahrt bezeichnet bei Christen den Glauben an die Rückkehr '
.'des Jesus von Nazareth als Sohn Gottes zu seinem Vater in den Himmel '
.'und zugleich einen christlichen Feiertag, bzw. ein katholisches Hochfest. '
.'Christi Himmelfahrt wird am 40. Tag nach dem Ostersonntag gefeiert, '
.'wobei wie in alter Zeit üblich der Ostersonntag und der '
.'Himmelfahrtstag selbst beide mitgezählt werden. Deshalb fällt '
.'das Fest immer auf einen Donnerstag. Der früheste Termin ist der '
.'30. April; der späteste Termin der 3. Juni.');
$arr_feiertage['maifeiertag'] = array(
$arr_datums_zahlen['maifeiertag'],
'Maifeiert.',
'Tag der Arbeit',
'Tag der Arbeit, auch "Kampftag der Arbeiterbewegung"',
'Der Erste Mai ist ein gesetzlicher Feiertag in Deutschland, Österreich, '
.'Teilen der Schweiz und vielen weiteren Staaten. Er wird auch als Tag '
.'der Arbeit, Maifeiertag oder Kampftag der Arbeiterbewegung bezeichnet. '
.'Die amtliche Bezeichnung in Deutschland ist durch Gesetze der einzelnen '
.'Länder geregelt. In Nordrhein-Westfalen z. B. ist der '
.'1. Mai offiziell Feiertag als "Tag des Bekenntnisses zu Freiheit '
.'und Frieden, sozialer Gerechtigkeit, Völkerversöhnung '
.'und Menschenwürde".');
$arr_feiertage['pfingstsonntag'] = array(
$arr_datums_zahlen['pfingstsonntag'],
'Pfingstso.',
'Pfingstsonntag',
'Pfingstsonntag',
'Pfingsten (vom griech. pentekoste- [he-mera], "der fünfzigste Tag") '
.'bezeichnet das Fest am fünfzigsten Tag nach Ostern (das entspricht '
.'dem 10. Tag nach Christi Himmelfahrt); gemäß antiker Praxis '
.'wurde dabei der Ostersonntag als erster Tag gezählt. Damit '
.'fällt der Pfingstsonntag stets auf den Zeitraum zwischen dem '
.'10. Mai und dem 13. Juni.');
$arr_feiertage['pfingstmontag'] = array(
$arr_datums_zahlen['pfingstmontag'],
'Pfingstmo.',
'Pfingstmontag',
'Pfingstmontag',
'Pfingsten (vom griech. pentekoste- [he-mera], "der fünfzigste Tag") '
.'bezeichnet das Fest am fünfzigsten Tag nach Ostern (das entspricht '
.'dem 10. Tag nach Christi Himmelfahrt); gemäß antiker Praxis '
.'wurde dabei der Ostersonntag als erster Tag gezählt. '
.'Damit fällt der Pfingstsonntag stets auf den Zeitraum '
.'zwischen dem 10. Mai und dem 13. Juni.');
$arr_feiertage['fronleichnam'] = array(
$arr_datums_zahlen['fronleichnam'],
'Fronleichn.',
'Fronleichnam',
'Fronleichnamsfest',
'Das Fronleichnamsfest, kurz: Fronleichnam (von mittelhochdeutsch: vrônlîcham, '
.'vrônlîchname, das aus der vrône lîcham entstanden ist, '
.'was "Leib des Herrn" bedeutet; kirchenlat.: Corpus Domini), offiziell '
.'"Hochfest des Leibes und Blutes Christi", regional auch Prangertag oder '
.'Blutstag genannt, ist ein Fest im römisch-katholischen Festjahr, '
.'mit dem die leibliche Gegenwart Jesu Christi im Sakrament der '
.'Eucharistie gefeiert wird.');
$arr_feiertage['mariae_himmelf'] = array(
$arr_datums_zahlen['mariae_himmelf'],
'Mari.Himmelf.',
'Mariä Himmelfahrt',
'Mariä Himmelfahrt, Mariae Aufnahme in den Himmel',
'Mariä Aufnahme in den Himmel (früher, heute noch volkstümlich: '
.'Mariä Himmelfahrt) ist ein Hochfest der römisch-katholischen '
.'und orthodoxen Kirche am 15. August.');
$arr_feiertage['tag_dt_einheit'] = array(
$arr_datums_zahlen['tag_dt_einheit'],
'Dt.Einheit',
'Tag d. Dt. Einheit',
'Tag der Deutschen Einheit',
'Der Tag der Deutschen Einheit am 3. Oktober ist seit 1990 '
.'Deutschlands Nationalfeiertag, als an diesem Datum die '
.'Wiedervereinigung der beiden deutschen Staaten vollzogen wurde. '
.'Für das Gebiet der alten Bundesrepublik löste er in '
.'dieser Funktion den 17. Juni ab, für das Gebiet der '
.'vormaligen DDR den am 7. Oktober begangenen Tag der Republik.');
$arr_feiertage['reformationstag'] = array(
$arr_datums_zahlen['reformationstag'],
'Reformat.',
'Reformationstag',
'Reformationstag, von Gedenken ev. Christen.',
'Der Reformationstag wird von evangelischen Christen am '
.'31. Oktober in Gedenken an die Reformation gefeiert. '
.'Der Reformationstag ist in einigen deutschen Bundesländern gesetzlicher Feiertag.');
$arr_feiertage['allerheiligen'] = array(
$arr_datums_zahlen['allerheiligen'],
'Allerheil.',
'Allerheiligen',
'Allerheiligen, Gedenktag der Heiligen',
'Das Fest Allerheiligen (lat.: Omnium Sanctorum), begangen am '
.'1. November, ist ein Hochfest der Römisch-Katholischen '
.'Kirche und ein Fest (Gedenktag der Heiligen) in der '
.'Selbständigen Evangelisch-Lutherischen Kirche.');
$arr_feiertage['buss_bettag'] = array(
$arr_datums_zahlen['buss_bettag'],
'Buß-/Bettag',
'Buß- und Bettag',
'Buß- und Bettag',
'Der Buß- und Bettag ist in Deutschland ein Feiertag der '
.'evangelischen Kirche, der auf Notzeiten zurückgeht. '
.'Er wurde im Lauf der Geschichte für besondere Anliegen '
.'angesetzt, aber oft nicht am selben Datum.');
$arr_feiertage['heiligabend'] = array(
$arr_datums_zahlen['heiligabend'],
'Heiligabend',
'Heiliger Abend',
'Heiliger Abend',
'Der Heilige Abend, umgangssprachlich kurz Heiligabend genannt, ist am '
.'24. Dezember der Vorabend des Weihnachtsfestes. An diesem Abend findet '
.'unter anderem in Deutschland, der Schweiz und in Österreich traditionell '
.'die Bescherung statt.');
$arr_feiertage['erster_weihnachtstag'] = array(
$arr_datums_zahlen['erster_weihnachtstag'],
'1.Weihn.',
'1. Weihnachtstag',
'Erster Weihnachtsfeiertag',
'Weihnachten (auch "Christfest" oder "Heiliger Christ") ist das '
.'christliche Fest der Geburt Jesu Christi und damit, nach christlichem Glauben, '
.'der Menschwerdung Gottes.');
$arr_feiertage['zweiter_weihnachtstag'] = array(
$arr_datums_zahlen['zweiter_weihnachtstag'],
'2.Weihn.',
'2. Weihnachtstag',
'Zweiter Weihnachtsfeiertag',
'Der 2. Weihnachtsfeiertag ist ein gesetzlicher Feiertag in Deutschland'
.'und ein Überbleibsel der Reformation und von Martin Luther, '
.'der damit die Wichtigkeit des Weihnachtsfestes unterstreichen wollte. '
.'Lutheraner feiern an ihm einem Sakramentsgottesdienst (mit Abendmahl).');
$arr_feiertage['silvester'] = array(
$arr_datums_zahlen['silvester'],
'Silvester',
'Silvester',
'Silvester, letzten Kalendertag eines Jahres',
'Als Silvester wird im westlichen Sprachraum der 31. Dezember, '
.'der letzte Tag des Jahres im gregorianischen Kalender, bezeichnet.');//'';
return $arr_feiertage;
}//ENDE: function feiertage_mit_bezeichng($jahr=FALSE, $format_date='d.m.y')
function vermutung_sinniges_jahr($zahl)
{
$sinniges_jahr = str_replace('0', ' ', $zahl);//erstmal alle 0'en in Leert. umwandeln.
$sinniges_jahr = ltrim($sinniges_jahr);//Links eine ueberfluessige Leert. entfernen.
$sinniges_jahr = str_replace(' ', '0', $sinniges_jahr);//dann wieder alle Leert. in 0'en zurueckwandeln.
$sinniges_jahr = intval($sinniges_jahr);//zur Sicherheit noch in Integer wandeln.
$laenge_jahr = strlen($sinniges_jahr);//laenge von dem noch uebrigen Wert ermitteln.
$akt_jahr = date('Y');//aktuelles Jahr
$sinniges_jahr = substr($akt_jahr, 0, -$laenge_jahr).$sinniges_jahr;
if ($sinniges_jahr > 2037 || $sinniges_jahr < 1970) {
//liegt die Zahl nicht zw. 1970 u. 2037, hat PHP Probleme mit der Ausgabe,
//also einfach das aktuelle Jahr zurueckgeben:
return $akt_jahr;//aktuelles Jahr
} else {
//Ansonsten kann das bereinigte Jahr zurueckgegeben werden:
return $sinniges_jahr;
}//ENDE: if ($sinniges_jahr > 2037 || $sinniges_jahr < 1970)
}//ENDE: function sinniges_jahr_vermuten($zahl)
?>