Vous êtes ici Codes PHP et MySQL > Date-Heure > Déterminer rapidement si un jour est férié (fêtes...

 

Déterminer rapidement si un jour est férié (fêtes mobiles incluses)

Les jours fériés en France sont de deux types, fixes (1 mai, 25 décembre, etc.) et mobiles, pâques, pentecôte, etc.
Une chance en php, la date de pâques se calcule aisément, et les autres fêtes mobiles en découlent...
Facile à configurer pour un pays autre que la France.
Pour utiliser cette fonction, appelez là depuis votre page php ou placez là dedans.
echo jour_ferie(mktime(0,0,0,12,25,2008));
sortira 1 car la date indiquée est fériée (25/12/2008).
les jours ouvrables donneront 0.
 
Olravet
Site de l'auteur voir
[3] sources en PHP voir
Code vu 3662 fois
Enregistré le 05 Mai 2008
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Déterminer rapidement si un jour est férié (fêtes mobiles incluses)
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Déterminer rapidement si un jour est férié (fêtes...      */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts382-PHP.htm              */
/* Auteur         : Olravet                                                   */
/* Date édition   : 05 Mai 2008                                               */
/* Website auteur : http://olravet.fr/                                        */
/*                                                                            */
/******************************************************************************/

function jour_ferie($timestamp)
{
$jour date("d"$timestamp);
$mois date("m"$timestamp);
$annee date("Y"$timestamp);
$EstFerie = ;
// dates fériées fixes
if($jour == && $mois == 1$EstFerie 1// 1er janvier
if($jour == && $mois == 5$EstFerie 1// 1er mai
if($jour == && $mois == 5$EstFerie 1// 8 mai
if($jour == 14 && $mois == 7$EstFerie 1// 14 juillet
if($jour == 15 && $mois == 8$EstFerie 1// 15 aout
if($jour == && $mois == 11$EstFerie 1// 1 novembre
if($jour == 11 && $mois == 11$EstFerie 1// 11 novembre
if($jour == 25 && $mois == 12$EstFerie 1// 25 décembre
// fetes religieuses mobiles
$pak easter_date($annee);
$jp date("d"$pak);
$mp date("m"$pak);
if($jp == $jour && $mp == $mois){ $EstFerie 1;} // Pâques
$lpk mktime(date("H"$pak), date("i"$pak), date("s"$pak), date("m"$pak)
, date("d"$pak) +1date("Y"$pak) );
$jp date("d"$lpk);
$mp date("m"$lpk);
if($jp == $jour && $mp == $mois){ $EstFerie 1; }// Lundi de Pâques
$asc mktime(date("H"$pak), date("i"$pak), date("s"$pak), date("m"$pak)
, date("d"$pak) + 39date("Y"$pak) );
$jp date("d"$asc);
$mp date("m"$asc);
if($jp == $jour && $mp == $mois){ $EstFerie 1;}//ascension
$pe mktime(date("H"$pak), date("i"$pak), date("s"$pak), date("m"$pak),
 date("d"$pak) + 49date("Y"$pak) );
$jp date("d"$pe);
$mp date("m"$pe);
if($jp == $jour && $mp == $mois) {$EstFerie 1;}// Pentecôte
$lp mktime(date("H"$asc), date("i"$pak), date("s"$pak), date("m"$pak),
 date("d"$pak) + 50date("Y"$pak) );
$jp date("d"$lp);
$mp date("m"$lp);
if($jp == $jour && $mp == $mois) {$EstFerie 1;}// lundi Pentecôte
// Samedis et dimanches
$jour_sem jddayofweek(unixtojd($timestamp), );
if($jour_sem ==  || $jour_sem == 6$EstFerie 1;
// ces deux lignes au dessus sont à retirer si vous ne désirez pas faire
// apparaitre les
// samedis et dimanches comme fériés.
return $EstFerie;
}

echo jour_ferie(mktime(,,,12,25,2008));

//sortira 1 car la date indiquée est fériée (25/12/2008).
//les jours ouvrables donneront 0.
?>

 

Fonctions du code

: Formate une date/heure locale - (PHP 4, PHP 5)
: Retourne un timestamp UNIX pour Pâques, à minuit pour une année donnée - (PHP 4, PHP...
: - (PHP 4, PHP 5)
: Retourne le numéro du jour de la semaine - (PHP 4, PHP 5)
: Convertit un timestamp UNIX en un jour Julien - (PHP 4, PHP 5)
: Affiche une chaîne de caractères - (PHP 4, PHP 5)
Commentaire
Du grand boulot! Merci beaucoup ;)
 
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Date-Heure

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
        Publicité