Ajouter des jours à une date en PHP ?

Ajouter des jours à une date en PHP ? - PHP - Programmation

Marsh Posté le 07-08-2004 à 11:58:03    

Existe t il une fonction native ou faut il l'a créer ?
 
Merci


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-08-2004 à 11:58:03   

Reply

Marsh Posté le 07-08-2004 à 12:07:32    

Je n'ai pas compris la question ! Peux tu détailler ?


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 07-08-2004 à 12:10:17    

Quel format de date utilise tu ?

Reply

Marsh Posté le 07-08-2004 à 12:10:21    

merci pour ta volonté de m'aider !
 
Je veux prendre une date et ajouter x jours à cette date.
 
Existe t il une fonction native à PHP ou faut il l'a créer ?


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-08-2004 à 12:10:43    

Peu importe le format je peux faire dans tous les formats (UK & Fr)


Message édité par shade93 le 07-08-2004 à 12:20:55

---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-08-2004 à 12:14:29    

Ben  
$moi = substr(0,2,$date)
$jour = substr(3,2,$date)
$annee = sustr(4,4,$date)  
la tu selectionne le jour
settype($jour,"int" )
$jour = $jour + 2;
$date = $moi.$jour.$annee
ça devrai passer ...
 
mais le mieux est d'utiliser le nombre de seconde qui te separe de l'epoque UNIX : le date("U" ) et a ce chiffre qui est un entier tu lui ajoute 60*60*60*24 pour un jour et tu applique de chiffre a la fontion date pour avoir le mois, le jour, l'annee du moment.
c'est plus pratique je trouve

Reply

Marsh Posté le 07-08-2004 à 12:18:16    

pour passer d'une date texte (en anglais) au timestamp => strtodate()
Je te conseille un peiti tour ici, il y a 14 fonctions natives à PHP pour faire à peu près tout ce que tu veux


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 07-08-2004 à 12:22:18    

Merci pour votre aide
T509 je ne vois pas de fonction permettant d'additioner des jours


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-08-2004 à 12:37:39    

Comme rainbow_efreet te l'a dit, il faut travailler sur les timestamp. Tu travailles sur un nombre de secondes et tu ajoutes ou tu retranches ce que tu veux.
Les fonctions du lien que je t'ai donné, te permettent de passer de la date au timestamp et vice versa


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 07-08-2004 à 13:05:42    

ok merci encore


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-08-2004 à 13:05:42   

Reply

Marsh Posté le 07-08-2004 à 14:44:36    

par contre dans la méthode à rainbow_efreet si je suis en fin de mois et que j'additionne ça va pas le faire ?


Message édité par shade93 le 07-08-2004 à 14:44:53

---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 07-08-2004 à 14:46:14    

ya pas un truc comme Date::Calc en perl?
 
ou sinon tu transforme en timestamp, tu additionnes les secondes, tu refou en date

Reply

Marsh Posté le 07-08-2004 à 14:50:49    

Si cela va fonctionner. la fonction date() te retrouve le jour qui correspond au timestamp.
 
exple en français
aujourd'hui = 31/12/2004 23:56
je veux la date dans une heure
dans_1_heure = mktime(aujourd'hui) + 3600
date (dans_1_heure) => 01/01/2005 00:56
 
essaie, tu verras


---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 07-08-2004 à 15:06:15    

ah super merci


---------------
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it" B. Gates
Reply

Marsh Posté le 08-08-2004 à 09:30:58    

$date = "08-08-2004";
 
//décomposition de la date pour mieu comprendre
$jour = "08";
$mois = "08";
$anne = "2004";
 
//Je veux que $date = 10-08-2004
$mkdate = mktime(0, 0, 0, $mois, $jour+2, $anne)
$date   = strftime("%d-%m-%Y", $mkdate);
 
echo $date;
 
//affiche : '10-08-2004'

Reply

Marsh Posté le 08-08-2004 à 09:31:33    

http://www.


Message édité par papachico le 08-08-2004 à 17:48:54
Reply

Marsh Posté le 08-08-2004 à 12:44:35    


 
Merci pour ta contribution à propos de la question.
Par contre ton post suivant etait à éviter car in n'apporte rien dans ce cas ci. C'est un beau Spam.


Message édité par T509 le 08-08-2004 à 12:44:56

---------------
fermez vos topics résolus avec le tag [Résolu] en fin de titre. Merci !
Reply

Marsh Posté le 08-08-2004 à 12:55:11    

je l'avais oublié c tout, je te pris de m'excuser

Reply

Marsh Posté le 08-08-2004 à 17:49:32    

Ta signature, tu la mets dans ton profil puis tu coches la case "Afficher votre signature" quand tu postes :p
Mais la poster comme ça dans le message ça ne se fait pas, et encore moins de ne faire un message que pour ça.

Reply

Marsh Posté le 08-08-2004 à 20:27:46    

Je profites (un peu) du sujet, mais pourquoi préfèrez vous systématiquement des calculs genre

Code :
  1. dans_1_heure = mktime(aujourd'hui) + 3600

à l'utilisation de strtotime ? :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed