(PHP 5 >= 5.2.0, PHP 7, PHP 8)
DateTime::modify -- date_modify — Modifie le timestamp
Style orienté objet
Style procédural
Modifie le timestamp d'un objet DateTime en l'incrémentant ou le décrémentant dans un format acceptable par strtotime().
object
Style procédural uniquement : Un objet DateTime retourné par la fonction date_create(). Cette fonction modifie cet objet.
modifier
Une chaîne date/heure. Les formats valides sont expliqués dans la documentation sur les formats Date et Heure.
Retourne l'objet modifié DateTime pour chainer les méthodes ou false
si une erreur survient.
API Orienté Objet uniquement : Si une chaîne de date ou de temps invalide est fournie, une DateMalformedStringException est lancé.
Version | Description |
---|---|
8.3.0 | Lance désormais une DateMalformedStringException avec DateTime::modify() si une chaîne invalide est fourni, au lieu d'un avertissement. date_modify() n'a pas été modifié. |
Exemple #1 Exemple avec DateTime::modify()
Style orienté objet
<?php
$date = new DateTime('2006-12-12');
$date->modify('+1 day');
echo $date->format('Y-m-d');
?>
Style procédural
<?php
$date = date_create('2006-12-12');
date_modify($date, '+1 day');
echo date_format($date, 'Y-m-d');
?>
Les exemples ci-dessus vont afficher :
2006-12-13
Exemple #2 Méfiez-vous lors de l'ajout ou la soustraction de mois
<?php
$date = new DateTime('2000-12-31');
$date->modify('+1 month');
echo $date->format('Y-m-d') . "\n";
$date->modify('+1 month');
echo $date->format('Y-m-d') . "\n";
?>
L'exemple ci-dessus va afficher :
2001-01-31 2001-03-03
Exemple #3 Tous les formats de date et d'heure sont pris en charge
<?php
$date = new DateTime('2020-12-31');
$date->modify('1er juillet 2023');
echo $date->format('Y-m-d H:i') . "\n";
$date->modify('l prochain');
echo $date->format('Y-m-d H:i') . "\n";
$date->modify('17:30');
echo $date->format('Y-m-d H:i') . "\n";
?>
L'exemple ci-dessus va afficher :
2023-07-01 00:00 2023-07-03 00:00 2023-07-03 17:30