Afficher les jours entre deux dates

cs_Ricci Messages postés 9 Date d'inscription dimanche 17 mars 2002 Statut Membre Dernière intervention 7 décembre 2009 - 2 déc. 2009 à 07:41
cs_Ricci Messages postés 9 Date d'inscription dimanche 17 mars 2002 Statut Membre Dernière intervention 7 décembre 2009 - 7 déc. 2009 à 11:28
Bonjour!
J'ai trouve le script ci-dessous pour afficher les jours entre 2 dates.


$nbjour=($date2-$date1)/60/60/24;//Nombre de jours entre les deux

for($i=0;$i<=$nbjour;$i++)
{



echo date('Y-m-d-w',$date1);
echo "
";
//echo strftime('%d-%m-%Y-%w',$date1);
if ($date1 0 or $date1 6 ) {

$date1+=60*60*24; //On additionne d'un jour (en seconde)
//echo'
' ;
}
}

Ca fonctionne bien,mais maintenant j'aimerais enlever les Samedi et les Dimanche.
Je n'arrive pas trouver le bon code.

if($jour_semaine 0 || $jour_semaine 6)?


Si quelquin peut m'aider s.v.p

Je suis amateur/débutant

MERCI
ricci
A voir également:

8 réponses

cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
2 déc. 2009 à 10:59
Bonjour,

Fait comme ça -> plus rapide :
<?php
  $dateDeb = '2009-12-01';
  $dateFin = '2009-12-21';

  $date = new DateTime($dateDeb);
  do
  {
    if (($date -> format('N') != 6) && ($date -> format('N') != 7))
    {
      echo $date -> format('d/m/Y') . '
';
    }
    $dateDeb = $date -> format('Y-m-d');
    $date -> modify('+1 day');
  }
  while ($dateDeb < $dateFin);
?>



Cordialement.

JC
0
cs_Ricci Messages postés 9 Date d'inscription dimanche 17 mars 2002 Statut Membre Dernière intervention 7 décembre 2009
2 déc. 2009 à 11:40
Merci,mais me donne un :
Fatal error: Cannot instantiate non-existent class: datetime in d:\home
?
ricci
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
2 déc. 2009 à 19:25
Salut,

Quelle est ta version de PHP ?


Cordialement,


Kohntark -
0
cs_Ricci Messages postés 9 Date d'inscription dimanche 17 mars 2002 Statut Membre Dernière intervention 7 décembre 2009
3 déc. 2009 à 06:22
Salut,
Ma version de PHP est PHP 4.4.2!

Bonne journée

ricci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
3 déc. 2009 à 16:31
Ne fonctionne qu'à partir de php 5.2


Cordialement.

JC
0
cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
3 déc. 2009 à 17:10
Avant php 5.2 :
<?php
  $dateDeb = '2009-12-01';
  $dateFin = '2009-12-21';

  do
  {
    $date = strtotime($dateDeb);
    $jour = date('N', $date);
    if (($jour != 6) && ($jour != 7))
    {
      echo date('d/m/Y', $date) . '
';
    }
    $dateDeb = date('Y-m-d', strtotime('+1 day', $date));
  }
  while ($dateDeb < $dateFin);
?>



Cordialement.

JC
0
cs_Ricci Messages postés 9 Date d'inscription dimanche 17 mars 2002 Statut Membre Dernière intervention 7 décembre 2009
4 déc. 2009 à 04:53
Merci, ca fonctionne, mais au lieu:

$jour = date('N', $date);
if (($jour != 6) && ($jour != 7)):

$jour = date('w', $date);
if (($jour != 0) && ($jour != 6))


Bonne jounée! A bientôt
ricci
0
cs_Ricci Messages postés 9 Date d'inscription dimanche 17 mars 2002 Statut Membre Dernière intervention 7 décembre 2009
7 déc. 2009 à 11:28
Avec ce but de code j'ai afficher les jours sans les weekend.
<?php
$dateDeb = '2009-12-01';
$dateFin = '2009-12-21';

do
{
$date = strtotime($dateDeb);
$jour = date('w', $date);
if (($jour != 0) && ($jour != 6))
{
echo date('d/m/Y', $date) . '
';
}
$dateDeb = date('Y-m-d', strtotime('+1 day', $date));
}
while ($dateDeb < $dateFin);
?>

maintenant il fault que j'enléve encore les jour feriée.
Je sais pas comment placer les arrays $Ferié!

$diesesjahr = date("Y");
$ostern = easter_date( date("Y") );
$ostermonat = date("n" , $ostern );
$ostertag = date("j" , $ostern );
$Pacques = date('Y-m-d',$ostern);
$Nouvan = date("Y-01-01") ;
$Noel = date("Y-12-25");
$FeteNat = date("Y-08-01");

$Ferié = array("$Nouvan","$Noel","$FetNat","$Pacques");


for($i=0;$i<sizeof($Ferié);$i++)
{
echo $Ferié[$i].'
';
}
Merci d'avance!


ricci
0
Rejoignez-nous