2010-09-16 6 views
12

Je veux obtenir la date du jour + un an. Comment puis-je y parvenir avec les fonctions de date de PHP?date PHP; Comment trouver l'année prochaine?

+1

double possible de [Comment afficher une date en ajoutant quelques mois à elle] (http://stackoverflow.com/questions/3722442/how-do-i-display-a-date- en ajoutant-un-quelques-mois-à-it) – Gordon

Répondre

43
echo date('Y', strtotime('+1 year')); 
5

Vous pouvez utiliser strtotime et date

$date = '2010-09-16'; 
echo date('Y-m-d', strtotime("+12 months $date")); 
// 2011-09-16 

Sur un Sidenote: questions DateTime comme celui-ci ont répondu maintes et maintes fois, vous auriez pu trouver comment ajouter à une date facilement using the search function.

+1

Un bon formatage! :) – fabrik

0

Vous pouvez utiliser les nouvelles classes Datetime_Intervall-datetime et introduites dans le PHP plus tard 5 versions.

J'ai déjà posté une réponse in this question. Peut-être qu'il vous aide :)

L'avantage est que cette classe vérifie également bissextiles secondes et années bissextiles, fuseaux horaires, etc.

6

De documentation PHP:

<?php 
    $date = new DateTime($your_supposed_date); 
    $date->add(new DateInterval('P1Y')); 
    echo $date->format('Y-m-d') . "\n"; 
?> 

Gordon beaucoup plus propre de Version (Merci!):

<?php 
    $date = new DateTime("+12 months $theDate"); 
    echo $date->format('Y-m-d') . "\n"; 
?> 
+2

Bien que correct et bon, notez que 'DateTime :: __ construct' utilise le même mécanisme d'analyse que' strtotime', donc vous pouvez aussi faire '$ date = new DateTime (" + 12 mois $ theDate "); echo $ date-> format ('Y-m-d'). "\ n"; ' – Gordon

0

Si vous travaillez avec horodatages

echo time()+60*60*24*365 
+0

que diriez-vous des années bissextiles? – Gordon

+1

time() + 60 * 60 * 24 * 365.2425 – Flask

1
$Ad_year = 2015-10-20 
<?php echo $Ad_year + 1?> 
Result 2016 
+0

@TobSpr, Mais c'est le cas. Je ne sais pas si cela fonctionne jusqu'à ce que je l'essaie. Mais il essaie de répondre à la question. Qu'est-ce que je rate ? –