web-dev-qa-db-fra.com

Ajouter des jours à une date en PHP

Y at-il une fonction php disponible où je peux ajouter des jours à une date pour compenser une autre date? Par exemple, j'ai une date au format suivant: 27-décembre-2011

Si j'ajoute 7 à ce qui précède, cela devrait donner: 03-janvier-2012.

Merci beaucoup

12
user1038814

Essaye ça

$add_days = 7;
$date = date('Y-m-d',strtotime($date) + (24*3600*$add_days));
16
Fabrizio

Regardez ce simple extrait

$date = date("Y-m-d");// current date

$date = strtotime(date("Y-m-d", strtotime($date)) . " +1 day");
$date = strtotime(date("Y-m-d", strtotime($date)) . " +1 week");
$date = strtotime(date("Y-m-d", strtotime($date)) . " +2 week");
$date = strtotime(date("Y-m-d", strtotime($date)) . " +1 month");
$date = strtotime(date("Y-m-d", strtotime($date)) . " +30 days");
8
Simone

Vous pouvez utiliser la méthode add de DateTime. Quoi qu'il en soit, cette solution fonctionne pour la version php> = 5.3

5
Aurelio De Rosa
date('Y-m-d', strtotime('+6 days', strtotime($original_date)));
5
Smamatti

En fait, c'est plus facile que tout ça.

$some_var = date("Y-m-d",strtotime("+7 day"))

Vous pouvez utiliser une variable à la place de la chaîne, bien sûr. Ce sera formidable si les personnes qui répondent aux questions ne vont pas compliquer les choses. Moins de code signifie moins de temps à perdre sur le serveur;).

2
Lucian Minea
$date = new DateTime('27-December-2011');
$date->add(new DateInterval('P7D'));
echo $date->format('d-F-Y') . "\n";

Changez la chaîne de format pour être ce que vous voulez. (Voir la documentation pour date()).

1
Matthew
$registered = $udata->user_registered;
$registered = date( "d m Y", strtotime( $registered ));
$challanexpiry = explode(' ', $registered);
$day   = $challanexpiry[0];
$month = $challanexpiry[1];
$year  = $challanexpiry[2];
$day = $day+10;
$bankchallanexpiry = $day . " " . $month . " " . $year;
0
Wasim Khan