(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 DateTime en cas de succès.
Style procédural retourne false
en cas d'erreur.
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 |
DateTime::modify() lance désormais
DateMalformedStringException si une
chaîne invalide est passée. Auparavant, il retournait false ,
et un avertissement était émis.
|
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