HOWTO · PHP

Datumsformat in PHP zum Einfügen in MySQL

In diesem Artikel erfahren Sie, wie Sie das Datum in PHP formatieren, bevor Sie es in MySQL einfügen.

Auf dieser Seite

MySQL ist eine RDBMS-Datenbank, die relationale Daten speichern soll. Es unterstützt verschiedene Datentypen, darunter Date. Da MySQL nur bestimmte Datumsformate unterstützt, müssen Sie die Datumsangaben formatieren, bevor Sie Datumsangaben in die Datenbank einfügen; andernfalls gibt die DB einen Fehler aus.

In diesem Artikel erfahren Sie, wie Sie Datumsangaben in PHP formatieren, bevor Sie sie in eine MySQL-Datenbank einfügen.

MySQL unterstützt 5 Datumsformate.

  1. DATE: YYYY-MM-DD Es speichert nur das Datum ohne Uhrzeit im Bereich von 1000-01-01 bis 9999-12-31. Zum Beispiel 2021-10-28.
  2. DATETIME: YYYY-MM-DD HH:MI:SS. Es speichert das Datum mit Uhrzeit im Bereich von 1000-01-01 00:00:00 bis 9999-12-31 23:59:59. Beispiel: 2021-10-28 10:30:24
  3. TIMESTAMP: YYYY-MM-TT HH:MI:SS. Es speichert das Datum mit Uhrzeit im Bereich von 1970-01-01 00:00:01 bis 2038-01-09 03:14:17. Beispiel: 2021-10-28 10:30:24
  4. TIME: HH:MI:SS. Es speichert die Uhrzeit ohne Datum im Bereich von -838:59:59 bis 838:59:59. Beispiel: 10:30:24
  5. YEAR: YYYY oder YY. Es speichert das Jahr entweder 4-stellig oder 2-stellig im Bereich von 70(1970)-69(2069) für 2 Stellen und 1901-2155 | 0000 für 4 Stellen. Beispiel: 2021.

Bevor wir die Lösung lernen, wollen wir das Konzept von date() verstehen.

date() in PHP

Es handelt sich um eine integrierte PHP-Funktion, die die formatierte DatumsZeichenkette zurückgibt.

Syntax von date()

date($format, $timestamp);

Parameter

$format: Dies ist ein obligatorischer Parameter, der das Format der AusgabedatumsZeichenkette angibt. Einige der Optionen sind:

  1. d - Der Tag des Monats im Bereich von 01 bis 31
  2. m - Eine numerische Darstellung eines Monats im Bereich von 01 bis 12
  3. Y - Eine vierstellige Darstellung eines Jahres
  4. y - Eine zweistellige Darstellung eines Jahres
  5. H - Eine zweistellige Darstellung einer Stunde im Bereich von 00 bis 23
  6. i - Eine zweistellige Darstellung einer Minute im Bereich von 00 bis 59
  7. s - Eine zweistellige Darstellung einer Sekunde im Bereich von 00 bis 59

$timestamp: Dies ist ein optionaler Parameter, der einen Unix-Zeitstempel im Integer-Format angibt. Wenn nicht angegeben, wird ein Standardwert als aktuelle Ortszeit verwendet.

Beispielcode:

<?php
    $formated_DATETIME = date('Y-m-d H:i:s');
    echo $formated_DATETIME. "<br>";
    // 2021-10-27 14:02:16
    $formated_DATE = date('Y-m-d');
    echo $formated_DATE. "<br>";
    // 2021-10-27

    $formated_TIME = date('H:i:s');
    echo $formated_TIME. "<br>";
    //14:03:57

    $formated_YEAR = date('Y');
    echo $formated_YEAR. "<br>";
    // 2021

?>

Ausgabe:

2021-10-27 14:02:16
2021-10-27
14:03:57
2021

date_format() in PHP

Es ist eine eingebaute PHP-Funktion, die das Objekt DateTime als Eingabe verwendet und die formatierte DatumsZeichenkette zurückgibt.

Syntax von date_format()

date_format($dateObject, $format);

Parameter

$dateObject: Es ist ein obligatorischer Parameter, der ein DateTime-Objekt angibt.

$format: Dies ist ein obligatorischer Parameter, der das Format der AusgabedatumsZeichenkette angibt. Einige der Optionen sind:

  1. d - Der Tag des Monats im Bereich von 01 bis 31
  2. m - Eine numerische Darstellung eines Monats im Bereich von 01 bis 12
  3. Y - Eine vierstellige Darstellung eines Jahres
  4. y - Eine zweistellige Darstellung eines Jahres
  5. H - Eine zweistellige Darstellung einer Stunde im Bereich von 00 bis 23
  6. i - Eine zweistellige Darstellung einer Minute im Bereich von 00 bis 59
  7. s - Eine zweistellige Darstellung einer Sekunde im Bereich von 00 bis 59

Beispielcode:

<?php
    $date = date_create("2021/10/27");

    $formated_DATETIME = date_format($date, 'Y-m-d H:i:s');
    echo $formated_DATETIME. "<br>";

    $formated_DATE = date_format($date, 'Y-m-d');
    echo $formated_DATE. "<br>";

    $formated_TIME = date_format($date, 'H:i:s');
    echo $formated_TIME. "<br>";

    $formated_YEAR = date_format($date, 'Y');
    echo $formated_YEAR. "<br>";
?>

Ausgabe:

2021-10-27 00:00:00
2021-10-27
00:00:00
2021