Voila une petite fonction PHP permettant de définir si la date fournie en paramètre (au format timestamp) est un jour férié ou non.
Cette fonction retourne true si le jour est férié, false dans le cas contraire
?php /** * Cette fonction retourne un tableau de timestamp correspondant * aux jours fériés en France pour une année donnée. */ function isNotWorkable($date) { if ($date === null) { $date = time(); } $date = strtotime(date('m/d/Y',$date)); $year = date('Y',$date); $easterDate = easter_date($year); $easterDay = date('j', $easterDate); $easterMonth = date('n', $easterDate); $easterYear = date('Y', $easterDate); $holidays = array( // Dates fixes mktime(0, 0, 0, 1, 1, $year), // 1er janvier mktime(0, 0, 0, 5, 1, $year), // Fête du travail mktime(0, 0, 0, 5, 8, $year), // Victoire des alliés mktime(0, 0, 0, 7, 14, $year), // Fête nationale mktime(0, 0, 0, 8, 15, $year), // Assomption mktime(0, 0, 0, 11, 1, $year), // Toussaint mktime(0, 0, 0, 11, 11, $year), // Armistice mktime(0, 0, 0, 12, 25, $year), // Noel // Dates variables mktime(0, 0, 0, $easterMonth, $easterDay + 1, $easterYear), mktime(0, 0, 0, $easterMonth, $easterDay + 39, $easterYear), mktime(0, 0, 0, $easterMonth, $easterDay + 50, $easterYear), ); return in_array($date, $holidays); } ?>
Petit exemple d’utilisation :
<?php if(isNotWorkable(time())){ echo 'Nous sommes un jour férié !! Apéro !!'; }else{ echo 'Nous sommes un jour normal, au boulot :p'; } ?>
Sympa, je me garde ça sous le coude.
Pour les “$easterDay + 1”, “+39”, “+50” : ça corresponds à quelles occasions ? Ce sont les seuls que tu n’as pas précisé en commentaire.
Rhoalala on reconnais les athés ^^,
paques + 40 = ascension
paques + 50 = Pentecôte
(paques-1) + 1 = heuh, pâques ^^
“Athé”, tout de suite les grands mots.
J’ai juste jamais été fichu de me souvenir des dates ^^’
T’inquiète moi non plus, j’ai triché sur Wikipédia ^^, en plus je suis pastafariste et on a pas les mêmes jours sacrés :p
Salut !
Merci beaucoup, je pense que ça va me servir.
Toutefois, comment afficher quelque chose du genre “Nous sommes un jour férié ! c’est noël…”
Pâques n’est pas un jour férié, c’est un Dimanche et en tant que Dimanche, il est chômé. C’est le lundi de Pâque qui est férié.