Heim >Datenbank >MySQL-Tutorial >Wie formatiere ich Datumsangaben in ISO 8601 mit PHP richtig?

Wie formatiere ich Datumsangaben in ISO 8601 mit PHP richtig?

DDD
DDDOriginal
2024-11-11 12:18:02683Durchsuche

How to Correctly Format Dates in ISO 8601 Using PHP?

PHP zum Formatieren von Datumsangaben in ISO 8601 verwenden

Sie sind auf ein Problem gestoßen, bei dem Datumsangaben in Ihrer MySQL-Datenbank in ISO falsch angezeigt werden 8601-Format. Insbesondere wird ein Datum wie „17. Okt. 2008“ als „1969-12-31T18:33:28-06:00“ angezeigt.

Problemanalyse

Die Der Code, den Sie zum Formatieren von Datumsangaben verwenden, ist:

<?= date("c", $post[3]) ?>

Das zweite Argument der date()-Funktion sollte jedoch ein UNIX-Zeitstempel und keine Datenbank-Zeitstempelzeichenfolge sein. Ein UNIX-Zeitstempel ist eine numerische Darstellung der Anzahl der Sekunden, die seit dem 1. Januar 1970 vergangen sind.

Lösung

Um dies zu korrigieren, müssen Sie Ihre Datenbank konvertieren Zeitstempel mit der Funktion strtotime() in einen UNIX-Zeitstempel umwandeln:

<?= date("c", strtotime($post[3])) ?>

Dadurch wird sichergestellt, dass die date()-Funktion einen gültigen UNIX-Zeitstempel erhält und das Datum korrekt im ISO 8601-Format formatiert.

Das obige ist der detaillierte Inhalt vonWie formatiere ich Datumsangaben in ISO 8601 mit PHP richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn