valougraou
Messages postés1Date d'inscriptionjeudi 20 janvier 2011StatutMembreDernière intervention20 janvier 2011 20 janv. 2011 à 18:49
Bonjour,
Ce sujet est assez ancien, mais je tenais juste à signaler qu'on parle ici de jours ouvrés (considérant le samedi et le dimanche comme jours non travaillés) et non ouvrables.
La définition d'un jour ouvrable est la suivante :
On considère comme ouvrables les jours consacrés au travail, c'est-à-dire tous les jours du calendrier à l'exception des jours correspondant au repos hebdomadaire légal et des jours fériés. En général on considère comme ouvrables les jours du lundi au samedi inclus.
Salutations,
VG
stardust_muss
Messages postés3Date d'inscriptionlundi 28 mars 2005StatutMembreDernière intervention18 février 2010 18 févr. 2010 à 10:33
à ce jour je n'ai pas réussi à faire marcher le code tel qu'il est fourni.
$aBankHolidays[] = date ('j_n',$iEaster);
$aBankHolidays[] = date ('j_n', $iEaster + (86400*39));
$aBankHolidays[] = date ('j_n', $iEaster + (86400*49));
// stamp théorique de fin
$iEnd = $iDays * 86400;
$i = 0;
while ($i < $iEnd) {
if (in_array(date('w', $iDate+$i),array(0,6)) || in_array(date('j_n', $iDate+$i),$aBankHolidays)) {
$iEnd = strtotime ('+1 day', $iEnd);
}
$i+= 86400;
}
//Stamp de fin date initial + le nombre de décalage
$stampFin = $iDate + $iEnd;
return ($iDate+$iEnd);
}
$iDate = strtotime ('2009-12-24');
$iDays = getNextOpenDay ($iDate, 2);
echo date("d/m/Y",$iDays);
Note : Dans un scénario de congé par exemple
Pour un congé pris le 24 décembre , la fonction retournera 29 décembre (25 férié , 26 27 = samedi et dimanche)
L'employé reviendra bien le 29 mais ses congés prennent fin le 28. Ainsi si on voulait afficher la date de fin de congé on afficherai la date retournée par la fonction - 1 jour.
Cordialement.
Astemius
Messages postés10Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention22 mars 2010 25 juil. 2008 à 17:16
En fait, la fonction easter_date() ne prend qu'un seul paramètre : l'année.
Voila le easter_date de ton code:
easter_date((int)date('Y'), $iDate)
Si tu suis bien les parenthèses, il y a actuellement l'année et la date que l'on entre en paramètre de la fonction.
Ca ne retourne pas d'erreur (étonnant d'ailleurs), mais ça ne fonctionne pas réellement pour autant. je m'en suis rendu compte en faisant des tests et en constant que cette fonction écrite tel quel me retournait toujours la même date pour pâques, peu importait l'année.
Donc en gros il faut écrire :
easter_date((int)date('Y', $iDate))
Voila, c'est subtile m'enfin.
See you space cowboy...
PS : Franchement, magnifique, après m'être penché un peu dans le code j'ai voulu tenté une chose : les heures ouvrées. Enfin j'en ai besoin pour l'appli en cours, et en gros en mettant 3/24 pour 3h par exemple, et bien ça fonctionne... bref, j'adore (non franchement, si tu savais à quel point j'en chie... j'ai envie de pleurer de joie là ^^)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 24 juil. 2008 à 20:38
Hello,
merci pour le commentaire :-)
Je ne vois pas de quelle parenthèse mal placée tu parles, par contre ?
Quant à Pâques, j'avoue que je n'avais jamais vérifié...merci pour l'info, je corrigerai.
Astemius
Messages postés10Date d'inscriptionmercredi 24 mai 2006StatutMembreDernière intervention22 mars 2010 24 juil. 2008 à 16:55
Salutations,
j'adore ce genre de code mais, car il y a un mais, y a un soucis au niveau du calcul de pâques et de la pentecôte.
En fait, tu prends bien le jour même de pâques, idem pour la pentecôte. Le soucis est que les jours fériés ont lieu le lendemain, soit le lundi de pâques et le lundi de la pentecôte (l'algo tombe sur les dimanche).
J'ai aussi noté une erreur dans l'utilisation de la fonction easter_date (parenthèse mal placée... d'ailleurs je ne comprends pas pourquoi ça ne me renvoyait pas d'erreur avant). Voici donc le code modifié :
if (function_exists('easter_date')) {
$iEaster = easter_date ((int)date('Y', $iDate));
} else {
$iEaster = getEaster ((int)date('Y'), $iDate);
}
$aBankHolidays[] = date ('j_n',$iEaster + 86400);
$aBankHolidays[] = date ('j_n', $iEaster + (86400*39));
$aBankHolidays[] = date ('j_n', $iEaster + (86400*50));
Pour ma part, j'ai supprimé la fonction getEaster() du code car la fonction easter_date existait effectivement.
M'enfin, merci pour le code, c'est probablement le meilleur que j'ai trouvé. Très optimisé. J'adhère.
cs_FRAJA
Messages postés3Date d'inscriptionlundi 21 mars 2005StatutMembreDernière intervention10 avril 2008 10 avril 2008 à 08:43
Bonjour,
j'ai testé à partir de 2008 et pour paques j'ai été obligé d'ajouter + 1.
Pour mon cas j'ai ajouté le samedi dans la semaine.
et pour intégrer paques car ça ne fonctionnait pas (j'ai peut être omis qqchoses mais maintenant ça fonctionne)
$paques=date ('d_m', getEaster (2008));
$paques=str_replace ( '0', '', $paques) ;
et dans la fonction (bien sur ajouter $paque dans l'appel de la fonction)
function getNextOpenDay ($iDate, $iDays,$paques) {
j'ai ajouté
$aBankHolidays[] = $paques;
merci pour ce script qui va rendre service
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 29 sept. 2006 à 13:44
Hello Philgriadmin,
merci pour l'info, mais à priori, tout ça est déjà correctement implémenté dans mon script. A priori. En tous cas, ça marche très bien en prod chez moi :-) Y compris pour le changement d'heure, maintenant ;-)
philgriadmin
Messages postés6Date d'inscriptionvendredi 16 juin 2006StatutMembreDernière intervention 9 février 2007 29 sept. 2006 à 13:11
Salut MALALAM,
tu trouveras tous les renseignements qui tournent autour des jours fériés mobile sur l'excellent site de WIkipédia en cherchant "DATE DE PAQUES"
http://fr.wikipedia.org/wiki/Calcul_de_la_date_de_P%C3%A2ques Mais pour info :
Pâques est la référence.
Lundi de Pâques est évidement le lendemain
Jeudi de l'Ascension est 39 jours plus tard soit le jeudi de la sixième semaine après Pâques.
Pentecôte est 49 jours plus tard soit le septième dimanche après Pâques
Lundi de Pentecôte est soit le 50eme jour soit le lendemain de la pentecôte à toi de voir ....
Ciao tutti
Sannazzarotiti
Messages postés228Date d'inscriptionjeudi 1 septembre 2005StatutMembreDernière intervention12 avril 2009 22 juil. 2006 à 10:47
je savait que tu pouvait les enlever mais pas voir les auteurs des notes ^^. Tout a fait d'accord avec toi. Du mois que l'auteur de la note se justifi. Enfin bref. Ton code pourait m'etre utile dans un de mes futurs projets donc je t'en remerci mais je vais etudier un peu le code car au premier coups d'oeil je comprend pas tout.
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 22 juil. 2006 à 10:08
Ben...lol, ils sont bêtes, parce que : ils ne laissent pas de commentaires en tentant de passer inaperçus sans doute, mais oublient (ou ne savent pas) que je suis admin, et que donc, je sais qui ils sont...bref, je supprime les notes pour les autres dans ce cas, je le fais aussi pour moi, là, y a pas de raison ;-)
Sannazzarotiti
Messages postés228Date d'inscriptionjeudi 1 septembre 2005StatutMembreDernière intervention12 avril 2009 22 juil. 2006 à 08:44
j'ai rien a ajouter. super bien coder (comme d'habitude). Par contre je me demande qui a mi 1/20 a la sources...
10/10 ;)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 juil. 2006 à 16:45
Jeca => oui, mais easter_date () appartient à une extension qui, elle, n'est pas forcément chargée. Et quand on est chez un hébergeur, sans la main sur le serveur...on ne peut pas toujours l'avoir.
Dans l'article que j'ai lu, je t'assure que l'Ascension était indiquée 38 jours après Pâques (sans autre précision).
cs_jeca
Messages postés341Date d'inscriptionmercredi 17 juillet 2002StatutMembreDernière intervention14 juillet 201114 21 juil. 2006 à 16:23
Il n'y a pas d'erreur dans les articles, car il est toujours dit que l'Ascension se situe 40 jours après Pâques, mais il n'est jamais précisé que Pâques est inclus dans les 40 jours, donc pour un calcul d'interval, c'est 40 - 1 soit 39. Remarque valable aussi pour les autres fêtes mobiles.
D'autre part, je ne pense pas que la fonction de calcul du jour de Pâques soit indispensable car easter_day() fait partie de php depuis la version 3.0.9.
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 juil. 2006 à 16:16
Moi non plus :-(, mais ça reste férié (chômé) pour beaucoup de boîtes. Donc bon...
pastis51forever
Messages postés172Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention 8 septembre 20061 21 juil. 2006 à 16:14
Pour pentecote, faudrait voir... Il est férié ou pas?
En tout cas, j'y ai pas eu droit...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 juil. 2006 à 16:12
Jeca => Pour Pentecôte, j'ai mal lu visiblement, en le foutant 11 jours après Pâques (je n'ai aucune idée de quand c'est, pour être honnête) par contre pour l'Ascension, c'est une erreur sur l'article que j'ai lu dans ce cas. Et une erreur aussi pour Pentecôte, avec aussi 1 jour de décalage.
Maudits articles ;-)
Merci en tous cas, je corrige.
cs_jeca
Messages postés341Date d'inscriptionmercredi 17 juillet 2002StatutMembreDernière intervention14 juillet 201114 21 juil. 2006 à 16:02
Bonjour,
2 bugs :
calcul de l'Ascension :
# $aBankHolidays[] = date ('j_n', $iEaster + (86400*38));
C'est 39 jours après Pâques (40 jours d'après les textes, Pâques inclus) et non 38.
J'imagine que tu as voulu calculer la date de la Pentecôte, et dans ce cas, c'est 49 jours par rapport à Pâques et 10 jours par rapport à l'Ascension.
# $aBankHolidays[] = date ('j_n', $iEaster + (86400*11));
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 juil. 2006 à 13:41
"# $iResult = 25-$iC-$iE;
# $iResult;"
T'as fumé ? ;)
=> 'tain, c'est pas ma journée...lol.
pastis51forever
Messages postés172Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention 8 septembre 20061 21 juil. 2006 à 13:38
Tout est bien qui finit bien...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 juil. 2006 à 13:34
Ok, là tu as raison, y a un blème, et dans mon calcul de tt à l'heure aussi, ce devrait être le 12 et non pas le 13 :-)
Problème résolu, j'étais parti du fait que le couple jour/mois faisait un entier unique...ce qui est débile : 111 peut correspondre au 1er novembre, comme au 11 janvier.
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 21 juil. 2006 à 13:20
"# $iResult = 25-$iC-$iE;
# $iResult;"
T'as fumé ? ;)
Pas mal du tout, ca servira pas pour les sites perso, mais tout ce qui est site marchand devrait être interessé :)
pastis51forever
Messages postés172Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention 8 septembre 20061 21 juil. 2006 à 13:18
hmmm...
4 jours ouvrés après le 6, ca donne le 13 (13-6=7jours)
4 jours ouvrés après le 13, ca donne le 19 (19-13=6jours)
6 et 13 sont 2 vendredis, et il n'y a de jours fériés dans aucune des 2 semaines ;-)
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 21 juil. 2006 à 13:18
Abre los ojos Pada \o/
Désolé grand chef =)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 21 juil. 2006 à 13:07
PaDa => bah c'est juste un exemple d'utilisation, ça n'a pas de rapport direct avec la fonction :-)
Pastis51Forever => le 6 janvier 2006, c'est un vendredi. Le 7 et le 8 (samedi et dimanche) sont donc non ouvrables (bon, ça c'est dans mon cadre, c'est modifiable facilement). Donc, on tombe au lundi 9. Tu as un delta de 4 jours, donc 9, + 4 jours de delta, on arrive au 13 janvier. C'est bien ce que renvoie ma fonction, et c'est tout à fait juste ;-)
pastis51forever
Messages postés172Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention 8 septembre 20061 21 juil. 2006 à 12:57
Bonjour!
Ca peut être utile, mais un petit détail me chagrine...
Si tu essaies ca:
<?php
$datedepart='2006-01-06';
$delai=4;
$iDate = strtotime ($datedepart);
$iDays = getNextOpenDay ($iDate, $delai);
echo 'Prochain jour ouvrable à partir du '.$datedepart.', après une période de '.$delai.' jours : ', date ('d/m/Y', $iDate + (86400*$iDays)).'
';
$datedepart2='2006-01-13';
$iDate2 = strtotime ($datedepart2);
$iDays2 = getNextOpenDay ($iDate2, $delai);
echo 'Prochain jour ouvrable à partir du '.$datedepart2.', après une période de '.$delai.' jours : ', date ('d/m/Y', $iDate2 + (86400*$iDays2));
?>
Il n'y a pas de jour férié dans aucune des ces 2 periodes, mais la différence de dates n'est pas la meme...
111 est férié, mais pas tout le temps... Il est reconnu pour 1/11, ce qui est bien, mais aussi pour 11/1, qui lui n'est pas férié.
cs_PaDa
Messages postés1804Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention22 septembre 20095 21 juil. 2006 à 12:11
Je crois qu'il y a un oops dans ton echo ;)
Tu ne devrais pas mettre $iDays et $iDate au lieu des valeurs fixes en première partie de phrase ?
Bien sinon, ca peut toujours être utile =)
cs_Silverlink
Messages postés9Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention21 juillet 2006 21 juil. 2006 à 12:02
Peut effectivement servir. Le code est court est assez simple donc adaptable.
20 janv. 2011 à 18:49
Ce sujet est assez ancien, mais je tenais juste à signaler qu'on parle ici de jours ouvrés (considérant le samedi et le dimanche comme jours non travaillés) et non ouvrables.
La définition d'un jour ouvrable est la suivante :
On considère comme ouvrables les jours consacrés au travail, c'est-à-dire tous les jours du calendrier à l'exception des jours correspondant au repos hebdomadaire légal et des jours fériés. En général on considère comme ouvrables les jours du lundi au samedi inclus.
Salutations,
VG
18 févr. 2010 à 10:33
Voici la version modifié qui fonctionne pour moi
function getNextOpenDay ($iDate, $iDays) {
$aBankHolidays = array (
'1_1',
'1_5',
'8_5',
'14_7',
'15_8',
'1_11',
'11_11',
'25_12'
);
$iEaster = easter_date (date('Y',$iDate));
$aBankHolidays[] = date ('j_n',$iEaster);
$aBankHolidays[] = date ('j_n', $iEaster + (86400*39));
$aBankHolidays[] = date ('j_n', $iEaster + (86400*49));
// stamp théorique de fin
$iEnd = $iDays * 86400;
$i = 0;
while ($i < $iEnd) {
if (in_array(date('w', $iDate+$i),array(0,6)) || in_array(date('j_n', $iDate+$i),$aBankHolidays)) {
$iEnd = strtotime ('+1 day', $iEnd);
}
$i+= 86400;
}
//Stamp de fin date initial + le nombre de décalage
$stampFin = $iDate + $iEnd;
return ($iDate+$iEnd);
}
$iDate = strtotime ('2009-12-24');
$iDays = getNextOpenDay ($iDate, 2);
echo date("d/m/Y",$iDays);
Note : Dans un scénario de congé par exemple
Pour un congé pris le 24 décembre , la fonction retournera 29 décembre (25 férié , 26 27 = samedi et dimanche)
L'employé reviendra bien le 29 mais ses congés prennent fin le 28. Ainsi si on voulait afficher la date de fin de congé on afficherai la date retournée par la fonction - 1 jour.
Cordialement.
25 juil. 2008 à 17:16
Voila le easter_date de ton code:
easter_date((int)date('Y'), $iDate)
Si tu suis bien les parenthèses, il y a actuellement l'année et la date que l'on entre en paramètre de la fonction.
Ca ne retourne pas d'erreur (étonnant d'ailleurs), mais ça ne fonctionne pas réellement pour autant. je m'en suis rendu compte en faisant des tests et en constant que cette fonction écrite tel quel me retournait toujours la même date pour pâques, peu importait l'année.
Donc en gros il faut écrire :
easter_date((int)date('Y', $iDate))
Voila, c'est subtile m'enfin.
See you space cowboy...
PS : Franchement, magnifique, après m'être penché un peu dans le code j'ai voulu tenté une chose : les heures ouvrées. Enfin j'en ai besoin pour l'appli en cours, et en gros en mettant 3/24 pour 3h par exemple, et bien ça fonctionne... bref, j'adore (non franchement, si tu savais à quel point j'en chie... j'ai envie de pleurer de joie là ^^)
24 juil. 2008 à 20:38
merci pour le commentaire :-)
Je ne vois pas de quelle parenthèse mal placée tu parles, par contre ?
Quant à Pâques, j'avoue que je n'avais jamais vérifié...merci pour l'info, je corrigerai.
24 juil. 2008 à 16:55
j'adore ce genre de code mais, car il y a un mais, y a un soucis au niveau du calcul de pâques et de la pentecôte.
En fait, tu prends bien le jour même de pâques, idem pour la pentecôte. Le soucis est que les jours fériés ont lieu le lendemain, soit le lundi de pâques et le lundi de la pentecôte (l'algo tombe sur les dimanche).
J'ai aussi noté une erreur dans l'utilisation de la fonction easter_date (parenthèse mal placée... d'ailleurs je ne comprends pas pourquoi ça ne me renvoyait pas d'erreur avant). Voici donc le code modifié :
if (function_exists('easter_date')) {
$iEaster = easter_date ((int)date('Y', $iDate));
} else {
$iEaster = getEaster ((int)date('Y'), $iDate);
}
$aBankHolidays[] = date ('j_n',$iEaster + 86400);
$aBankHolidays[] = date ('j_n', $iEaster + (86400*39));
$aBankHolidays[] = date ('j_n', $iEaster + (86400*50));
Pour ma part, j'ai supprimé la fonction getEaster() du code car la fonction easter_date existait effectivement.
M'enfin, merci pour le code, c'est probablement le meilleur que j'ai trouvé. Très optimisé. J'adhère.
10 avril 2008 à 08:43
j'ai testé à partir de 2008 et pour paques j'ai été obligé d'ajouter + 1.
Pour mon cas j'ai ajouté le samedi dans la semaine.
et pour intégrer paques car ça ne fonctionnait pas (j'ai peut être omis qqchoses mais maintenant ça fonctionne)
$paques=date ('d_m', getEaster (2008));
$paques=str_replace ( '0', '', $paques) ;
et dans la fonction (bien sur ajouter $paque dans l'appel de la fonction)
function getNextOpenDay ($iDate, $iDays,$paques) {
j'ai ajouté
$aBankHolidays[] = $paques;
merci pour ce script qui va rendre service
29 sept. 2006 à 13:44
merci pour l'info, mais à priori, tout ça est déjà correctement implémenté dans mon script. A priori. En tous cas, ça marche très bien en prod chez moi :-) Y compris pour le changement d'heure, maintenant ;-)
29 sept. 2006 à 13:11
tu trouveras tous les renseignements qui tournent autour des jours fériés mobile sur l'excellent site de WIkipédia en cherchant "DATE DE PAQUES"
http://fr.wikipedia.org/wiki/Calcul_de_la_date_de_P%C3%A2ques
Mais pour info :
Pâques est la référence.
Lundi de Pâques est évidement le lendemain
Jeudi de l'Ascension est 39 jours plus tard soit le jeudi de la sixième semaine après Pâques.
Pentecôte est 49 jours plus tard soit le septième dimanche après Pâques
Lundi de Pentecôte est soit le 50eme jour soit le lendemain de la pentecôte à toi de voir ....
Ciao tutti
22 juil. 2006 à 10:47
22 juil. 2006 à 10:08
22 juil. 2006 à 08:44
10/10 ;)
21 juil. 2006 à 16:45
Dans l'article que j'ai lu, je t'assure que l'Ascension était indiquée 38 jours après Pâques (sans autre précision).
21 juil. 2006 à 16:23
D'autre part, je ne pense pas que la fonction de calcul du jour de Pâques soit indispensable car easter_day() fait partie de php depuis la version 3.0.9.
21 juil. 2006 à 16:16
21 juil. 2006 à 16:14
En tout cas, j'y ai pas eu droit...
21 juil. 2006 à 16:12
Maudits articles ;-)
Merci en tous cas, je corrige.
21 juil. 2006 à 16:02
2 bugs :
calcul de l'Ascension :
# $aBankHolidays[] = date ('j_n', $iEaster + (86400*38));
C'est 39 jours après Pâques (40 jours d'après les textes, Pâques inclus) et non 38.
J'imagine que tu as voulu calculer la date de la Pentecôte, et dans ce cas, c'est 49 jours par rapport à Pâques et 10 jours par rapport à l'Ascension.
# $aBankHolidays[] = date ('j_n', $iEaster + (86400*11));
21 juil. 2006 à 13:41
# $iResult;"
T'as fumé ? ;)
=> 'tain, c'est pas ma journée...lol.
21 juil. 2006 à 13:38
21 juil. 2006 à 13:34
Problème résolu, j'étais parti du fait que le couple jour/mois faisait un entier unique...ce qui est débile : 111 peut correspondre au 1er novembre, comme au 11 janvier.
21 juil. 2006 à 13:20
# $iResult;"
T'as fumé ? ;)
Pas mal du tout, ca servira pas pour les sites perso, mais tout ce qui est site marchand devrait être interessé :)
21 juil. 2006 à 13:18
4 jours ouvrés après le 6, ca donne le 13 (13-6=7jours)
4 jours ouvrés après le 13, ca donne le 19 (19-13=6jours)
6 et 13 sont 2 vendredis, et il n'y a de jours fériés dans aucune des 2 semaines ;-)
21 juil. 2006 à 13:18
Désolé grand chef =)
21 juil. 2006 à 13:07
Pastis51Forever => le 6 janvier 2006, c'est un vendredi. Le 7 et le 8 (samedi et dimanche) sont donc non ouvrables (bon, ça c'est dans mon cadre, c'est modifiable facilement). Donc, on tombe au lundi 9. Tu as un delta de 4 jours, donc 9, + 4 jours de delta, on arrive au 13 janvier. C'est bien ce que renvoie ma fonction, et c'est tout à fait juste ;-)
21 juil. 2006 à 12:57
Ca peut être utile, mais un petit détail me chagrine...
Si tu essaies ca:
<?php
$datedepart='2006-01-06';
$delai=4;
$iDate = strtotime ($datedepart);
$iDays = getNextOpenDay ($iDate, $delai);
echo 'Prochain jour ouvrable à partir du '.$datedepart.', après une période de '.$delai.' jours : ', date ('d/m/Y', $iDate + (86400*$iDays)).'
';
$datedepart2='2006-01-13';
$iDate2 = strtotime ($datedepart2);
$iDays2 = getNextOpenDay ($iDate2, $delai);
echo 'Prochain jour ouvrable à partir du '.$datedepart2.', après une période de '.$delai.' jours : ', date ('d/m/Y', $iDate2 + (86400*$iDays2));
?>
Il n'y a pas de jour férié dans aucune des ces 2 periodes, mais la différence de dates n'est pas la meme...
111 est férié, mais pas tout le temps... Il est reconnu pour 1/11, ce qui est bien, mais aussi pour 11/1, qui lui n'est pas férié.
21 juil. 2006 à 12:11
Tu ne devrais pas mettre $iDays et $iDate au lieu des valeurs fixes en première partie de phrase ?
Bien sinon, ca peut toujours être utile =)
21 juil. 2006 à 12:02