La date de Pâques repose sur une équation quelque peu complexe. Il existe plusieurs méthodes.
Nous allons prendre l'algorithme de Oudin, pour comprendre la méthode il faut avoir des bases dans le langage procédural de PHP
.
Vous êtes prêt(e) ? Alors accrochez-vous bien. Mais si vous n'y arrivez pas, la réponse se trouve directement sur cette page :
Calcul de la date de Pâques
.
/* *** Algorithme de Oudin, calcul de Pâques postèrieure é 1583 ***
* Transcription pour le langage PHP par David Prudhon le 23/03/2010
* *** Source : www.emploitheque.org/paques.php ***
* Attributs de la fonction :
* $Jourj : représente le jour de la semaine
* (0=dimanche, 1=lundi…)
* par défaut c'est le dimanche
* $annee : représente l'année recherchée pour la date de Pâques
* par défaut c'est l'année en cours.
* */
$annee=($annee==Null) ? date(« Y ») : $annee;
$G = $annee%19;
$C = floor($annee/100);
$C_4 = floor($C/4);
$E = floor((8*$C + 13)/25);
$H = (19*$G + $C - $C_4 - $E + 15)%30;
if($H==29)
{
$H=28;
}
elseif($H==28 && $G>
10)
{
$H=27;
}
$K = floor($H/28);
$P = floor(29/($H+1));
$Q = floor((21-$G)/11);
$I = ($K*$P*$Q - 1)*$K + $H;
$B = floor($annee/4) + $annee;
$J1 = $B + $I + 2 + $C_4 - $C;
$J2 = $J1%7;
//jour de Pâques (0=dimanche, 1=lundi…)
$R = 28 + $I - $J2;
// résultat final :)
$mois = $R>
30 ? 4 : 3;
// mois (1 = janvier, … 3 = mars…)
$Jour = $mois==3 ? $R : $R-31;
return mktime(, 0, $mois, $Jour+$Jourj, $annee);
Sources