:: Anbieterverzeichnis :: Globale Branchen
:: SELFPHP Forum ::
Fragen rund um die Themen PHP?
In über
130.000 Beiträgen finden Sie sicher die passende
Antwort!
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
|
Aschermittwoch für ein bestimmtes Jahr ermitteln |
|
SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an.
Weitere Informationen
Beispielaufgabe
Berechnung des Aschermittwochs für ein bestimmtes Jahr.
Beschreibung
Die Funktion eastern() berechnet für ein bestimmtes Jahr das Datum des Ostersonntags. Das Datum des Aschermittwoches wird dabei nach der Osterformel zur Berechnung des Ostersonntags ermittelt. Somit ist der Aschermittwoch am 46. Tag vor dem Ostersonntag. Nach einer christlichen Tradition wird Ostern am ersten Sonntag nach dem ersten Vollmond des Frühjahrsanfangs auf der nördlichen Halbkugel gefeiert.
Bei der Berechnung wurde hier eine modifizierte Form der Gaußschen Osterformel von Dr. Heiner Lichtenberg, Bonn, genutzt (H. Lichtenberg, Zur Interpretation der Gaußschen Osterformel und ihrer Ausnahmeregeln, Historia Mathematica 24, 441 - 444 (1997)).
-
$OG ist das Märzdatum des Ostervollmonds. Dabei handelt es sich um den 14. Tag des ersten Monats im Mondkalender.
-
$SZ ist das Datum des ersten Sonntags im März.
- $OS = $OG + $OE ist das Datum des Ostersonntags. Allerdings handelt es sich hierbei um das Datum im März!
- Der 32. März entspricht somit dem 1. April
- Der 35. März entspricht somit dem 4. April
- u.s.w
-
$OS - 46 ergibt das Datum des Aschermittwochs.
<?PHP
function eastern($year){
$X = $year;
$K = floor ( $X / 100 );
$M = 15 + floor ( ( ( 3 * $K ) + 3 ) / 4 ) -
floor ( ( ( 8 * $K ) + 13 ) / 25 );
$S = 2 - floor ( ( ( 3 * $K ) + 3 ) / 4 );
$A = $X % 19;
$D = ( 19 * $A + $M ) % 30;
$R = floor ( $D / 29 ) + ( floor ( $D / 28 ) -
floor ( $D / 29 ) ) * floor ( $A / 11 );
$OG = 21 + $D - $R;
$SZ = 7 - ( ( $X + floor ( $X / 4 ) + $S ) % 7 );
$OE = 7 - ( ( $OG - $SZ ) %7 );
$OS = $OG + $OE;
return $OS;
}
?>
|
Anwendungsbeispiel
<?PHP
for ( $x = 2005; $x <= 2015; $x++ ) {
$ostern = eastern ($x);
$aschermittwoch = $ostern - 46;
$dateFormat = date ( 'd.m.Y', mktime ( 0, 0, 0, 3, $aschermittwoch, $x ) );
echo 'Aschermittwoch ist am: ' . $dateFormat . "\n";
}
?>
|
Ausgabebeispiel: Quellcodeansicht
Aschermittwoch ist am: 09.02.2005
Aschermittwoch ist am: 01.03.2006
Aschermittwoch ist am: 21.02.2007
Aschermittwoch ist am: 06.02.2008
Aschermittwoch ist am: 25.02.2009
Aschermittwoch ist am: 17.02.2010
Aschermittwoch ist am: 09.03.2011
Aschermittwoch ist am: 22.02.2012
Aschermittwoch ist am: 13.02.2013
Aschermittwoch ist am: 05.03.2014
Aschermittwoch ist am: 18.02.2015 |
|
|
|
|
|
:: Anbieterverzeichnis ::
Webhosting/Serverlösungen
Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?
Sie sind nur ein paar Klicks davon entfernt!
Ausgewählter Tipp im Bereich PHP-Skripte
Schaltjahre bestimmen
Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
|