Une fonction php.

Bonjour je voudrais savoir si quelqu'un peut m'aider à faire une fonction qui permettre de calculer à partir d'une date rentrée à l'aide d'un formulaire, une date de sortie. Sachant que la date de sortie sera la date d'entrée + 30 jours ouvrables.Donc voilà en gros mon probleme j'espere que vous pourrez me venir en aide.

MERCI

4 réponses

  1. le echo que j'ai mis c'etait a titre d'exemple et $dateSrt n'est conu que de la fonction si tu veut lui passer un parametre tu fait par exemple
     //je suppose que t'recupere sa dans un formulaire parexemple 
    $madate = "12/05/2020"; 
    
    echo calculdate($madate); 
    
    


    au fait j'ai tester le code chez moi et ca marche
    1. bonjour merci pour votre aide , au fait à la derniere ligne là où vous faites "echo calculdate("08/05/2010")" la date ne doit pas etre fixe donc j'ai modifier un peu et j'ai mis comme argument de la fonction calculdate "$datestr" mais là aussi j'ai une fausse date du style ../../2007 , avez vous une idee du beug?

      merci
      1. salut j'espere que ceci va t'aider si
        <?php
        function calculdate($dateStr) {
        
        //$dateStr doit etre sous la forme dd/mm/aaaa
        
        // On recupere la le jour mois e anne separe par "/"
        list($j,$m,$a) = explode('/',$dateStr);
        //On recupere le timestamp a cette date mais a 0h 0min 0sec
        $timestamp = mktime(0,0,0,$m,$j,$a);
        
        //Comme on doit travailler avec du timestamp qui est en seconde ce qui donne 1 jour = 86400 sec
        $jour = 86400;
        
        //ce compteur servira pour dire si on'a atteint 30 jours ouvrable
        $cpJours = 0;
        
        // on fait une boucle infini mais qu'on arretra des qu'on arrive a 30jours ouvrivrable
        
        while (true) {
              
              //on ajoute un jour sur le timestamp recu par le parametre   
              $timestamp = $timestamp + $jour;
        	  // on test si le timestamp tombre sur un jour ouvrable ou non
        	  // si oui on comptabilise a l'aide de cpJours en l'incrementant
        	  // sinon on passe 
        	  // date("w") retour un nombre compris entre 0 et 6 (0=dimanche;5=samedi)
        	  
        	  //si le jour a ce timestamp n'est pas un dimanche ni un samedi 
        	  // on comptabilise
        	  if (date("w",$timestamp)!= 0 && date("w",$timestamp) != 5 ) {
        	   
        		 $cpJours++;
        
        		 //On teste maintenant si on'a atteint 30 jours ouvrable
        		 if ($cpJours == 30) {
        		     
        			 //on a attein 30 jours et c'est le but on sors de la boucle
        			 break;
        		 }
        	  }
        }
        // a la sortie de la boucle on le timestamp de 30 jours ouvrable
        return "d'ici 30 jours ouvrable la date sera ".date('d/m/Y',$timestamp); 
        }
        echo calculdate("08/05/2010");
        ?>