Nicole: Datum richtig ausgeben

Servus,

ist es möglich aus diesem Datum 2015-08-11 08:37:00 (in der DB hat dieses Feld datetime) dieses Datum zu machen: 11.08.2015 - 08:37:00 Uhr

Grüße und einen schönen Tag Nicole

  1. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

    ist es möglich aus diesem Datum 2015-08-11 08:37:00 (in der DB hat dieses Feld datetime) dieses Datum zu machen: 11.08.2015 - 08:37:00 Uhr

    guckst Du ins Handbuch:

    Datumsfunktionen

    Spirituelle Grüße
    Euer Robert
    robert.r@online.de

    --
    Möge der wahre Forumsgeist ewig leben!
  2. Tach!

    ist es möglich aus diesem Datum 2015-08-11 08:37:00 (in der DB hat dieses Feld datetime) dieses Datum zu machen: 11.08.2015 - 08:37:00 Uhr

    Ja. Es gibt Funktionen zum Formatieren von Datümern bei den Datums- und Zeitfunktionen, sowohl in MySQL als auch in PHP (für PHP muss/sollte es aber als Unix-Timestamp vorliegen).

    dedlfix.

    1. @@dedlfix

      für PHP muss/sollte es aber als Unix-Timestamp vorliegen

      oder als DateTime-Objekt, was ich vorziehe.

      LLAP 🖖

      --
      Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
      1. Tach!

        für PHP muss/sollte es aber als Unix-Timestamp vorliegen

        oder als DateTime-Objekt, was ich vorziehe.

        Warum würdest du es für den beschriebenen Anwendungsfall als DateTime-Objekt verwenden wollen?

        dedlfix.

    2. Servus,

      Ja. Es gibt Funktionen zum Formatieren von Datümern bei den Datums- und Zeitfunktionen, sowohl in MySQL als auch in PHP (für PHP muss/sollte es aber als Unix-Timestamp vorliegen).

      danke. Meine Lösung lautet

      $datum_db = strtotime($arrayKarte['datum']);
      $datum = date("d.m.Y",$datum_db); 
      $uhrzeit = date("H:i",$datum_db);
      
      1. Tach!

        Meine Lösung lautet

        $datum_db = strtotime($arrayKarte['datum']);
        $datum = date("d.m.Y",$datum_db); 
        $uhrzeit = date("H:i",$datum_db);
        

        Anderer Vorschlag: Die Umwandlung in einen Unix-Timestamp in das SQL-Statement verlegen und dann date() direkt darauf anwenden, ohne vorheriges strtotime().

        dedlfix.

        1. Servus,

          Anderer Vorschlag: Die Umwandlung in einen Unix-Timestamp in das SQL-Statement verlegen und dann date() direkt darauf anwenden, ohne vorheriges strtotime().

          gibt es Vor- bzw. Nachteile wenn ich es direkt im SQL-Statement mache bzw. es so lasse wie ich es jetzt gelöst habe?

          1. Tach!

            Anderer Vorschlag: Die Umwandlung in einen Unix-Timestamp in das SQL-Statement verlegen und dann date() direkt darauf anwenden, ohne vorheriges strtotime().

            gibt es Vor- bzw. Nachteile wenn ich es direkt im SQL-Statement mache bzw. es so lasse wie ich es jetzt gelöst habe?

            Das erneute Parsen auf der PHP-Seite fällt weg, wenn das Datum gleich im DBMS ins für die Weiterverarbeitung passende Format (in deinem Fall für die Ausgabeformatierungsfunktion) gebracht wird. Das macht das Kraut nicht fett, spart nur einen Verarbeitunggschritt und kostet einen Funktionsaufruf im SQL-Statement.

            dedlfix.

          2. Hallo und guten Tag,

            Anderer Vorschlag: Die Umwandlung in einen Unix-Timestamp in das SQL-Statement verlegen und dann date() direkt darauf anwenden, ohne vorheriges strtotime().

            gibt es Vor- bzw. Nachteile wenn ich es direkt im SQL-Statement mache bzw. es so lasse wie ich es jetzt gelöst habe?

            Der Weg über die Funktion Dateformat() der Datenbank ist mMn der richtige. Die Funktion kann den vollen Wertebereich der Datetime-Spalte übersetzen. Gehst Du den Weg über strtotime() von PHP, dann schränkst Du den Wertebereich ein. Das müsstest Du extra abfangen.

            Du könntest mit Hilfe von dateformat() in der Datenbankabfrage allerdings auch zwei getrennte Werte für Datum und Zeit generieren lassen. Man kann damit in aller Regel dann besser weiterarbeiten, als mit einem einzigen Datetime-Wert.

            Grüße
            TS