DateTime::modify
date_modify
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
DateTime::modify -- date_modify — Ändert den Zeitstempel
Beschreibung
Objektorientierter Stil
Prozeduraler Stil
Ändert den Zeitstempel eines DateTime-Objektes durch Erhöhen oder Verringern in einem von DateTimeImmutable::__construct() aktzeptierten Format.
Parameter-Liste
-
object
-
Nur bei prozeduralem Aufruf: Ein von date_create() zurückgegebenes DateTime-Objekt. Diese Funktion verändert dieses Objekt.
-
modifier
-
Ein Datums/Zeit Zeichenkette. Gültige Formate werden unter Datums- und Zeitformate erläutert.
Rückgabewerte
Gibt das geänderte DateTime-Objekt für die Methodenverkettung zurück. Bei einem Fehler wird false
zurückgegeben.
Beispiele
Beispiel #1 DateTime::modify()-Beispiel
Objektorientierter Stil
<?php
$date = new DateTime('2006-12-12');
$date->modify('+1 day');
echo $date->format('Y-m-d');
?>
Prozeduraler Stil
<?php
$date = date_create('2006-12-12');
date_modify($date, '+1 day');
echo date_format($date, 'Y-m-d');
?>
Die obigen Bespiele erzeugen folgende Ausgabe:
2006-12-13
Beispiel #2 Vorsicht beim Addieren oder Subtrahieren von Monaten
<?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";
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
2001-01-31 2001-03-03
Siehe auch
- strtotime() - Wandelt eine textuelle englische Datums- und Zeitbeschreibung in einen Unix-Zeitstempel um
- DateTimeImmutable::modify() - Erzeugt ein neues Objekt mit geändertem Zeitstempel
- DateTime::add() - Ändert ein DateTime-Objekt, wobei die Anzahl der Tage, Monate, Jahre, Stunden, Minuten und Sekunden hinzugefügt wird
- DateTime::sub() - Subtrahiert eine Anzahl von Tagen, Monaten, Jahren, Stunden, Minuten und Sekunden von einem DateTime-Objekt.
- DateTime::setDate() - Legt das Datum fest
- DateTime::setISODate() - Legt das ISO-Datum fest
- DateTime::setTime() - Legt die Uhrzeit fest
- DateTime::setTimestamp() - Legt Datum und Zeit basierend auf einem Unix-Zeitstempel fest