ConFoo 2025

DateTimeImmutable::modify

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

DateTimeImmutable::modifyCréée un nouvel objet avec l'horodatage modifié

Description

public DateTimeImmutable::modify(string $modifier): DateTimeImmutable

Crée un nouvel objet DateTimeImmutable avec l'horodatage modifié. L'objet original ne sera pas modifié.

Liste de paramètres

modifier

Une chaîne date/heure. Les formats valides sont expliqués dans la documentation sur les formats Date et Heure.

Valeurs de retour

Retourne DateTimeImmutable en cas de succès. Style procédural retourne false en cas d'erreur.

Erreurs / Exceptions

Si une chaîne de date ou de temps invalide est fournie, une DateMalformedStringException est lancé. Antérieur à PHP 8.3, ceci était un avertissement.

Historique

Version Description
8.3.0 DateTimeImmutable::modify() lance désormais DateMalformedStringException si une chaîne invalide est fourni. Auparavant, il retournait false, et un avertissement était émis.

Exemples

Exemple #1 Exemple de DateTimeImmutable::modify()

Style orienté objet

<?php
$date
= new DateTimeImmutable('2006-12-12');
$newDate = $date->modify('+1 day');
echo
$newDate->format('Y-m-d');
?>

Les exemples ci-dessus vont afficher :

2006-12-13

Exemple #2 Faire attention lors de l'ajout ou soustraction de mois

<?php
$date
= new DateTimeImmutable('2000-12-31');

$newDate1 = $date->modify('+1 month');
echo
$newDate1->format('Y-m-d') . "\n";

$newDate2 = $newDate1->modify('+1 month');
echo
$newDate2->format('Y-m-d') . "\n";
?>

L'exemple ci-dessus va afficher :

2001-01-31
2001-03-03

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top