time() gibt falsche Zeit zurück

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • time() gibt falsche Zeit zurück

    Hi,

    nutze auf meinem vServer php und habe das Problem, dass der time() Befehl immer die UTC Uhrzeit als Timestamp wiedergibt.

    Folgender Code wird genutzt:

    PHP-Code:
    <?php
    setlocale
    (LC_ALL'de_DE');
    date_default_timezone_set('Europe/Berlin');
    echo 
    time();
    ?>
    Ausgabe:
    1633679707

    Was im Endeffekt bedeutet: Fri Oct 08 2021 07:55:07

    Aber es ist bereits 09:55:07 gewesen. In der php.ini ist als Timezone auch Europe/Berlin eingestellt, genau so wie auf dem Betriebssystem die Zeitzone entsprechend eingestellt ist.
    Wie bekomme ich nun mit dem time() Befehl die tatsächliche deutsche Zeit?

  • #2
    Der Unix-Timestamp ist immer UTC. Funktioniert also wie vorgesehen.

    Der Unix-Timestamp beschreibt einen Zeitpunkt und keine lokale Uhrzeit. Wenn du die Uhrzeit möchtest, solltest du die DateTime-Klasse verwenden.

    Kommentar


    • #3
      OK - und wie bekomme ich einen Timestamp mit der lokalen Uhrzeit ?

      Kommentar


      • #4
        Zitat von Zero91 Beitrag anzeigen
        OK - und wie bekomme ich einen Timestamp mit der lokalen Uhrzeit ?
        PHP-Code:
        $dateTime = new DateTime('2021-10-08 10:00:00', new DateTimeZone('Europe/Berlin'));

        echo 
        $dateTime->getTimestamp();
        // 1633680000 

        Kommentar


        • #5
          Danke

          Kommentar


          • #6
            Junk Removal Redding

            Great Forum thanks for sharing the information. Visit Us

            Kommentar

            Lädt...
            X