strtotime() hat Probleme mit dem TT/MM/JJJJ-Format
Bei der Arbeit mit der Funktion strtotime() ist es wichtig, sich dessen bewusst zu sein Einschränkungen des Datumsformats. Obwohl es eine Reihe von Formaten unterstützt, kommt es beim Umgang mit dem Format TT/MM/JJJJ zu Problemen.
Lösung: Konvertieren Sie TT/MM/JJJJ in JJJJ-MM-TT
Um dieses Problem zu beheben und ein Datum im Format TT/MM/JJJJ in JJJJ-MM-TT zu konvertieren, betrachten Sie die folgende Vereinfachung Methode:
$date = '25/05/2010'; $date = str_replace('/', '-', $date); echo date('Y-m-d', strtotime($date));
Ausgabe:
2010-05-25
strtotime()-Dokumentation
Gemäß der strtotime()-Dokumentation , Datumsangaben im Format m/d/y oder d-m-y werden basierend auf dem verwendeten Trennzeichen interpretiert. Wenn das Trennzeichen ein Schrägstrich (/) ist, wird das amerikanische m/d/y-Format angenommen. Wenn das Trennzeichen ein Bindestrich (-) oder ein Punkt (.) ist, wird das europäische d-m-y-Format angenommen.
Da in unserem Fall dd/mm/YYYY einen Bindestrich als Trennzeichen verwendet, ist dies nicht konform in eines der unterstützten Formate. Daher ist der Konvertierungsschritt mit str_replace() erforderlich, um das Datum in das akzeptierte d-m-y-Format umzuwandeln, bevor strtotime() verwendet wird.
Das obige ist der detaillierte Inhalt vonWarum schlägt „strtotime()' mit TT/MM/JJJJ fehl und wie kann ich das beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!