Comment ajouter des jours à Date en PHP

Ralfh Bryan Perez 30 janvier 2023
  1. La méthode add dans DateTime() pour ajouter des jours en PHP
  2. date_add() pour ajouter des jours à la date en PHP
Comment ajouter des jours à Date en PHP

La manipulation de la chaîne date en PHP peut se faire de nombreuses façons, peut ajouter ou déduire des heures, des mois, des années, etc. PHP fournit différentes fonctions telles que DateTime, date_add et la combinaison de strtotime() et date().

La méthode add dans DateTime() pour ajouter des jours en PHP

En utilisant PHP version 5.3 et supérieure, l’objet DateTime et sa méthode add peuvent aussi être une solution. DateTime supporte plus de formats de date que strtotime et date. Utiliser un objet est également plus facile que des fonctions arbitraires. Par exemple, lorsque l’on compare deux dates, c’est directement dans DateTime, mais dans strtotime, il faut d’abord convertir la date en horodatage.

Exemple:

<?php
$oldDate = "2020-02-27";
$newDate = new DateTime($oldDate);
$newDate->add(new DateInterval('P1D')); // P1D means a period of 1 day
$fomattedDate = $date->format('Y-m-d');
?>

Le code suivant imprimera la sortie:

echo $fomattedDate; //output: 2020-02-28

La partie difficile de l’utilisation de DateTime() est l’objet DateInterval. Ceci accepte une spécification d’intervalle valide. Le format approprié commence par la lettre P qui signifie période, suivie d’une valeur entière, puis D pour le jour. Si la durée est le temps, la dernière partie doit être T.

Combinaison de strtotime() et de date() pour ajouter des jours à la date en PHP

La fonction strtotime() est une fonction PHP qui est utilisée pour convertir une description de date textuelle anglaise en un horodatage UNIX. La fonction strtotime acceptera une valeur de chaîne qui représente la date-heure.

Exemple:

<?php
$oldDate   = "2020-02-27";
$date1 = date("Y-m-d", strtotime($oldDate.'+ 1 days'));
$date2 = date("Y-m-d", strtotime($oldDate.'+ 2 days'));
?>

Le code suivant sera produit:

echo $date1; //output: 2020-02-28
echo $date2; //output: 2020-02-29

L’exemple ci-dessus acceptera une chaîne de date au format approprié et retournera la nouvelle date en utilisant strtotime et +1 days. La fonction date() a donné le format approprié.

Note: Pour éviter l’obscurité, il est recommandé d’utiliser le format ISO 8601 (YYYY-MM-DD).

date_add() pour ajouter des jours à la date en PHP

Cette approche est la plus facile parmi les autres pour ajouter des jours, des mois, des années, des heures, des minutes et des secondes.

Exemple:

$oldDate = date_create("2020-02-27"); 
date_add($oldDate, date_interval_create_from_date_string("1 day"));

En application:

echo date_format($date,"Y-m-d"); //output: 2020-02-28

L’exemple ci-dessus permet également d’ajouter des dates à une chaîne de dates, date_create() crée un objet DateTime. La fonction date_interval_create_from_date_string() crée un DateInterval à partir des parties de la chaîne. Enfin, date_add() incrémente la valeur de la date.

Article connexe - PHP Date