Warum schlägt DateTime :: createFromFormat () fehl und gibt in meinem zweiten Beispiel einen booleschen Wert zurück?

7

Wenn ich das starte, wird das erste korrekt zu einem Datum erstellt. Der zweite schlägt fehl und gibt boolean zurück, so dass ich nicht formatieren kann. Ist die Zeit außerhalb des Bereichs?

%Vor%

Code, um den Fehler zu reproduzieren

    
depperm 12.05.2015, 20:36
quelle

3 Antworten

10

Ändere h in ein großes H , da das kleine 12-Stunden-Format hat und das große 24-Stunden-Format.

Sie können alle Formate im Handbuch sehen. Und ein Zitat von dort:

  

h 12-Stunden-Format einer Stunde mit führenden Nullen 01 bis 12
H 24-Stunden-Format einer Stunde mit führenden Nullen 00 bis 23

Bedeutet gerade jetzt, dass Ihr Code nicht funktioniert, weil es im 12-Stunden-Format keine 15 gibt.

    
Rizier123 12.05.2015, 20:38
quelle
10

Überprüfen Sie DateTime::getLastErrors() :

%Vor%     
Marc B 12.05.2015 20:39
quelle
2

Zusätzlich zu den anderen Antworten müssen Sie für Standardformate, die von DateTime verstanden werden, nicht aus einem Format erstellen:

%Vor%     
AbraCadaver 12.05.2015 20:44
quelle

Tags und Links