<?php date_default_timezone_set('Europe/Paris'); ///////////////////////////////////////////////////////////////////////////////// function nom_jour($date) { $jour_semaine = array(1=>"lundi", 2=>"mardi", 3=>"mercredi", 4=>"jeudi", 5=>"vendredi", 6=>"samedi", 7=>"dimanche"); list($annee, $mois, $jour) = explode ("-", $date); $timestamp = mktime(0,0,0, date($mois), date($jour), date($annee)); $njour = date("N",$timestamp); return $jour_semaine[$njour]; } ///////////////////////////////////////////////////////////////////////////////// function jours_feries($annee) { $date_paques = easter_date($annee); $jour_paques = date('d', $date_paques); // j $mois_paques = date('m', $date_paques); // n //echo "---- " .$date_paques . " " .$jour_paques . " " .$mois_paques . " " .$annee; $jours_feries = array( // Jours feries fixes mktime(0, 0, 0, 1, 1, $annee),// 1er janvier mktime(0, 0, 0, 5, 1, $annee),// Fete du travail mktime(0, 0, 0, 5, 8, $annee),// Victoire des allies mktime(0, 0, 0, 7, 14, $annee),// Fete nationale mktime(0, 0, 0, 8, 15, $annee),// Assomption mktime(0, 0, 0, 11, 1, $annee),// Toussaint mktime(0, 0, 0, 11, 11, $annee),// Armistice mktime(0, 0, 0, 12, 25, $annee),// Noel // Jour feries qui dependent de paques mktime(0, 0, 0, $mois_paques, $jour_paques , $annee), mktime(0, 0, 0, $mois_paques, $jour_paques + 1, $annee),// Lundi de paques mktime(0, 0, 0, $mois_paques, $jour_paques + 39, $annee),// Ascension mktime(0, 0, 0, $mois_paques, $jour_paques + 50, $annee), // Pentecote ); sort($jours_feries); //print_r($jours_feries); /*for( $i=0; $i <count($jours_feries) ; $i++) { echo date('d/m/Y', $jours_feries[$i] ); echo '<br>'; } */ return($jours_feries); } ///////////////////////////////////////////////////////////////////////////////// function calendrier($annee) { $tab_mois = array("janvier","fevrier","mars","avril","mai","juin","juillet","aout","septembre","octobre","novembre","decembre"); $jour_semaine = array(1=>"lundi", 2=>"mardi", 3=>"mercredi", 4=>"jeudi", 5=>"vendredi", 6=>"samedi", 7=>"dimanche"); $n = cal_days_in_month(CAL_GREGORIAN, 2, $annee); $nb_jours = array(31,$n,31,30,31,30,31,31,30,31,30,31); $jours_feries = jours_feries($annee); $listing_jours = array(); for( $i=0; $i <12 ; $i++) { for( $j=1; $j <= $nb_jours[$i] ; $j++) { $jour = $j; if($jour<10) $jour = '0'.$jour; $mois = $i+1; if($mois<10) $mois = '0'.$mois; $date = $jour ."-" .$mois ."-" .$annee; $ts = strtotime($date); $jour_chiffre = date("N",$ts); $jour_lettre = $jour_semaine[$jour_chiffre]; if($jour_chiffre == 1 || $jour_chiffre == 2 || $jour_chiffre == 3 || $jour_chiffre == 4 || $jour_chiffre == 5) { $infos = ""; if(in_array($ts, $jours_feries)) { //echo $date ." - " .$jour_lettre ." " .$ts ." --> Ferie" ; //echo '<br>'; //$listing_jours[] = $date ."_" .$jour_lettre ."_" .$ts ."-" .'ferie' ; } else { //echo $date ." - " .$jour_lettre ." " .$ts; //echo '<br>'; $listing_jours[$i][] = $date ."_" .$jour_lettre ."_" .$ts; } } } } return($listing_jours); } ///////////////////////////////////////////////////////////////////////////////// ?> <style> label { display: inline-block; width: 150px; float: left; } </style> <?php /*$listing_jours = calendrier("2015"); echo '<pre>'; print_r($listing_jours);*/ /* echo '<form action="" method="POST" >'; for( $i=0; $i < count($listing_jours) ; $i++) { $pieces = explode('_',$listing_jours[$i]); echo '<label for="tarif">' .ucfirst($pieces[1]) ." " .$pieces[0] .': </label>'; echo '<input type="checkbox" name="' .$i .'" id="' .$i .'" value="' .$pieces[0] .'"><br/><br/>'; } echo ' <input type="submit" name="valide" value="ok"/>'; echo '</form>'; */ //http://www.informatix.fr/tutoriels/php/trouver-les-jours-feries-francais-en-php-137 ?>