DateTimeImmutable::__construct

date_create_immutable

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

DateTimeImmutable::__construct -- date_create_immutableLiefert ein neues DateTimeImmutable-Objekt

Beschreibung

Objektorientierter Stil

public DateTimeImmutable::__construct(string $datetime = "now", ?DateTimeZone $timezone = null)

Prozeduraler Stil

date_create_immutable(string $datetime = "now", ?DateTimeZone $timezone = null): DateTimeImmutable|false

Gibt ein neues DateTimeImmutable-Objekt zurück.

Parameter-Liste

datetime

Ein Datums/Zeit Zeichenkette. Gültige Formate werden unter Datums- und Zeitformate erläutert.

Wenn der Parameter $timezone verwendet wird, kann hier mit der Übergabe von "now" die aktuelle Zeit ermittelt werden.

timezone

Ein DateTimeZone-Objekt, das die Zeitzone von $datetime darstellt.

Wenn $timezone nicht übergeben wird oder null ist, wird die aktuelle Zeitzone verwendet.

Hinweis:

Der Parameter $timezone und die aktuelle Zeitzone werden ignoriert, wenn der Parameter $datetime entweder ein UNIX-Zeitstempel ist (z.B. @946684800) oder eine Zeitzone vorgibt (z.B. 2010-01-28T15:00:00+02:00 oder 2010-07-05T06:00:00Z).

Rückgabewerte

Gibt eine neue DateTimeImmutable-Instanz zurück. Prozeduraler Stil Im Fehlerfall wird false zurückgegeben.

Fehler/Exceptions

Löst bei einem Fehler eine Exception aus.

Changelog

Version Beschreibung
7.1.0 Von nun an werden die Mikrosekunden mit dem aktuellen Wert belegt, nicht mit '00000'.

Beispiele

Beispiel #1 DateTimeImmutable::__construct()-Beispiel

Objektorientierter Stil

<?php
try {
    
$date = new DateTimeImmutable('2000-01-01');
} catch (
Exception $e) {
    echo 
$e->getMessage();
    exit(
1);
}

echo 
$date->format('Y-m-d');
?>

Prozeduraler Stil

<?php
$date 
date_create('2000-01-01');
if (!
$date) {
    
$e date_get_last_errors();
    foreach (
$e['errors'] as $error) {
        echo 
"$error\n";
    }
    exit(
1);
}

echo 
date_format($date'Y-m-d');
?>

Die obigen Bespiele erzeugen folgende Ausgabe:

2000-01-01

Beispiel #2 Die Besonderheiten von DateTimeImmutable::__construct()

<?php
// Datums- und Zeitangaben in der Zeitzone des Computers.
$date = new DateTimeImmutable('2000-01-01');
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Datums- und Zeitangaben in der angegebenen Zeitzone.
$date = new DateTimeImmutable('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Aktuelles Datum und aktuelle Uhrzeit in der Zeitzone des Computers.
$date = new DateTimeImmutable();
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Aktuelles Datum und aktuelle Uhrzeit in der angegebenen Zeitzone.
$date = new DateTimeImmutable(null, new DateTimeZone('Pacific/Nauru'));
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Verwendung eines UNIX-Zeitstempels. Zu beachten ist,
// dass das Ergebnis in der Zeitzone UTC liegt.
$date = new DateTimeImmutable('@946684800');
echo 
$date->format('Y-m-d H:i:sP') . "\n";

// Nicht vorhandene Werte werden fortgeschrieben.
$date = new DateTimeImmutable('2000-02-30');
echo 
$date->format('Y-m-d H:i:sP') . "\n";
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

2000-01-01 00:00:00-05:00
2000-01-01 00:00:00+12:00
2010-04-24 10:24:16-04:00
2010-04-25 02:24:16+12:00
2000-01-01 00:00:00+00:00
2000-03-01 00:00:00-05:00

Beispiel #3 Ändern der zugehörigen Zeitzone

<?php
$timeZone 
= new \DateTimeZone('Asia/Tokyo');

$time = new \DateTimeImmutable();
$time $time->setTimezone($timeZone);

echo 
$time->format('Y/m/d H:i:s'), "\n";
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

2022/08/12 23:49:23

Beispiel #4 Verwenden einer Zeichenkette mit relativen Datums- und Zeitangaben

<?php
$time 
= new \DateTimeImmutable("-1 year");

echo 
$time->format('Y/m/d H:i:s'), "\n";
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

2021/08/12 15:43:51

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was ist neu in der PHP 8.2.10

PHP 8.2.10 ist eine der neuesten Versionen von PHP, die eine Reihe von Verbesserungen und neuen Funktionen mit sich bringt. In diesem Artikel werden wir einige der herausragenden Neuerungen und Verbesserungen dieser Version diskutieren. ...

admin

Autor : admin
Kategorie: Software-Updates

Total Commander 11.00 (final) ist verfügbar!

Total Commander, ein beliebter Datei-Manager, hat kürzlich seine neueste Version, 11.00, veröffentlicht. Mit einer Vielzahl von neuen Funktionen und Korrekturen bietet diese Version den Benutzern ein verbessertes und optimiertes Erlebnis. ...

admin

Autor : admin
Kategorie: Software-Updates

Welche Technologien sollte ein PHP Programmierer beherrschen?

In der heutigen digitalen Welt ist die Rolle eines PHP Programmierers von großer Bedeutung. ...

admin

Autor : admin
Kategorie: Dies und Das

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Uhrzeit

Hast du überprüft, ob du mysqli oder mysql-Datenbank verwendest? Das kann bereits für die Abfrage von Bedeutung sein.​ Ich weiß nicht, was ...

Geschrieben von scatello am 30.11.2023 07:14:35
Forum: Fragen/Vorschläge zum Forum
Uhrzeit

Hast du überprüft, ob du mysqli oder mysql-Datenbank verwendest? Das kann bereits für die Abfrage von Bedeutung sein.​

Geschrieben von Nicholasambert am 30.11.2023 04:10:28
Forum: Fragen/Vorschläge zum Forum
PHp Problem Ferienhäuser Problem

Entwickeln Sie eine Datenbank zur Speicherung von Informationen über Ferienhäuser. Sie können separate Tabellen für Häuser, Einrichtungen, Fe ...

Geschrieben von xetitox am 29.11.2023 21:26:43
Forum: PHP Developer Forum
Datenbankgröße abweichend

sowohl beim alten als auch beim neuen Hoster die Angabe "ungefähr" (wenn ich das Zeichen, siehe Screenshot, richtig interpretiere). OK, in phpMy ...

Geschrieben von scatello am 29.11.2023 20:16:31
Forum: SQL / Datenbanken