Wie überprüft man das Datumsformat der Zeichenkette in PHP?

8

Ich möchte prüfen, ob die Zeichenfolge dieses Zeitformat hat:

%Vor%

und wenn nicht, tue etwas Code z.B.

%Vor%

Wie man diese Bedingung in PHP macht?

    
kaspernov 17.08.2011, 21:07
quelle

7 Antworten

19

preg_match ist genau das, wonach Sie suchen:

%Vor%

Wenn Sie wirklich nur richtig formatierte Datum wollen, dann

%Vor%     
Shad 17.08.2011 21:10
quelle
16

Sie nicht. Es ist unmöglich zu sagen, ob es Y-m-d oder Y-d-m oder sogar Y-d-d vs Y-m-m ist. Was ist 2012-05-12 ? 12. Mai oder 5. Dezember?

Aber wenn Sie damit zufrieden sind, können Sie immer tun:

%Vor%

Obwohl Sie vielleicht sehen wollen, ob preg_match('/\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/',$date) nicht schneller ist. Habe es nicht getestet.

    
cwallenpoole 17.08.2011 21:12
quelle
13

Wie überprüft man das Datumsformat der Zeichenkette in PHP?

%Vor%     
Surendra Kumar Ahir 12.01.2016 05:46
quelle
3
%Vor%

Beachten Sie, dass dies nur überprüft, dass die Datumszeichenfolge wie eine Reihe von Ziffern aussieht, die durch Doppelpunkte und Bindestriche getrennt sind. Es prüft nicht für Kuriositäten wie "2011-02-31" (31. Februar) oder "99: 99: 99" für eine Zeit (99 Uhr?).

    
Marc B 17.08.2011 21:12
quelle
1

Von php.net

Hier ist eine coole Funktion, um eine mysql datetime zu validieren:

%Vor%     
Pedro Lobito 17.08.2011 21:54
quelle
0

Die Antwort beinhaltet wahrscheinlich reguläre Ausdrücke . Ich schlage vor, diese Dokumentation zu lesen und dann wieder hierher zu kommen, wenn Sie immer noch Probleme haben.

    
Oliver Charlesworth 17.08.2011 21:09
quelle
0

Du könntest es immer nur erzwingen:

%Vor%     
AlienWebguy 17.08.2011 21:10
quelle

Tags und Links