:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte
Unternehmen im
Anbieterverzeichnis von SELFPHP
:: SELFPHP Forum ::
Fragen rund um die Themen PHP? In über
120.000 Beiträgen finden Sie sicher die passende
Antwort!
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
:: Qozido ::
Die Bilderverwaltung mit Logbuch für
Taucher und Schnorchler.
|
|
Christi Himmelfahrt für ein bestimmtes Jahr ermitteln |
Beispielaufgabe
Berechnung von Christi Himmelfahrt für ein bestimmtes Jahr.
Beschreibung
Die Funktion eastern() berechnet für ein bestimmtes Jahr das Datum des Ostersonntags. Das Datum für Christi Himmelfahrt wird dabei nach der Osterformel zur Berechnung des Ostersonntags ermittelt. Somit ist Christi Himmelfahrt am 39. Tag nach 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 + 39 ergibt das Datum von Christi Himmelfahrt.
<?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);
$christi_himmelfahrt = $ostern + 39;
$dateFormat = date ( 'd.m.Y', mktime ( 0, 0, 0, 3, $christi_himmelfahrt, $x ) );
echo 'Christi Himmelfahrt ist am: ' . $dateFormat . "\n";
}
?>
|
Ausgabebeispiel: Quellcodeansicht
Christi Himmelfahrt ist am: 05.05.2005
Christi Himmelfahrt ist am: 25.05.2006
Christi Himmelfahrt ist am: 17.05.2007
Christi Himmelfahrt ist am: 01.05.2008
Christi Himmelfahrt ist am: 21.05.2009
Christi Himmelfahrt ist am: 13.05.2010
Christi Himmelfahrt ist am: 02.06.2011
Christi Himmelfahrt ist am: 17.05.2012
Christi Himmelfahrt ist am: 09.05.2013
Christi Himmelfahrt ist am: 29.05.2014
Christi Himmelfahrt ist am: 14.05.2015 |
|
|
|
|
|
|