12
votes

Obtenir la date à PHP dans 2 semaines

$addhr = time() + (1 * 13 * 60 * 60);
$curDateTimeMil= date("Y-m-d G:i:s",$addhr);
echo $curDateTimeMil; 
This will echo 2010-08-27 16:21:31.How can I get the date after 2 weeks? (sept 10)

2 commentaires

Hors de curiosité, qu'attendez-vous 1 * 13 * 60 * 60 fait?


Il existe également un exemple dans Date de PHP () Documentation Comment réaliser cette . Lire l'exemple n ° 3. Mais Strtotime serait une solution solide (@jensgram).


3 Réponses :


28
votes
strtotime('+2 weeks', mktime(0, 0, 0, 2, 8, 1984)); // 8th Feb. 1984 + 2 weeks

2 commentaires

Comment puis-je spécifier la date de début avant d'obtenir la date dans 2 semaines?


En acceptant les réponses à certaines de vos questions précédentes :-) ou en lisant la documentation. Ou en utilisant heure () .



5
votes

Vous pouvez spécifier l'heure de démarrage (de l'endroit où calculer) à l'aide de mktime () code>.

Exemple: Deux semaine après le 10 septembre 2010 (+14 jours): P>

 $date = date("Y-m-d G:i:s", mktime(date("G"), date("i"), date("s"), date("m"), date("d")+14, date("Y")));


0 commentaires

4
votes

Vous pouvez simplement ajouter le nombre de secondes de deux semaines:

$curDateTimeMil += 1209600;
// or
$curDateTimeMil += 2 * 7 * 24 * 60 * 60;


2 commentaires

Avec la petite mise en garde que vous risquez de manquer la bonne journée si vous êtes malchanceux suffisamment pour tomber dans une épargne à la lumière du jour ou un saut seconde ... :)


@Deceze: Ce n'est pas un problème avec le temps mais avec la représentation du temps.