Zadejte hledaný výraz...

Regulární výraz pro datum a čas

Taps
verified
rating uzivatele
(118 hodnocení)
12. 2. 2016 19:47:45
Zdravím, mohl by mi prosím někdo poradit regulární výraz pro datum a čas, který mám napsaaný v níže uvedeném formátu. Potřeboval bych, aby regulární výraz bral v potaz i hodnoty typu např. 1.1.2016 8:36 - tedy hodnoty bez počátečních 0
12.02.2016 19:36
Děkuji
12. 2. 2016 19:47:45
https://webtrh.cz/diskuse/regularni-vyraz-pro-datum-a-cas#reply1174415
Fido123
verified
rating uzivatele
(13 hodnocení)
12. 2. 2016 19:59:39
Třeba takhle
a ten samotný regulární výraz je pak takhle
12. 2. 2016 19:59:39
https://webtrh.cz/diskuse/regularni-vyraz-pro-datum-a-cas#reply1174414
TomasX
verified
rating uzivatele
(4 hodnocení)
12. 2. 2016 20:02:54
mohu se zeptat, proc to chces resit regularnim vyrazem? V php je rada funkci, ktere krome syntaxe zkontroluji i jestli datum muze existovat, tj. vyraz vyse necha projit napr. "43.33.1111 0:0"
12. 2. 2016 20:02:54
https://webtrh.cz/diskuse/regularni-vyraz-pro-datum-a-cas#reply1174413
Jan Stejskal
verified
rating uzivatele
(7 hodnocení)
12. 2. 2016 20:05:31
Napsal Fido123;1266695
Tímto neprojde 12. 02. 2016 19:36, otázka je, zda to je dobře nebo špatně. Naopak tím projde něco, co datum a čas není.
12. 2. 2016 20:05:31
https://webtrh.cz/diskuse/regularni-vyraz-pro-datum-a-cas#reply1174412
Taps
verified
rating uzivatele
(118 hodnocení)
12. 2. 2016 20:50:09
Napsal TomášX;1266697
mohu se zeptat, proc to chces resit regularnim vyrazem? V php je rada funkci, ktere krome syntaxe zkontroluji i jestli datum muze existovat, tj. vyraz vyse necha projit napr. "43.33.1111 0:0"
Potřebuji zkontrolovat zda je datum a čas ve formulářovém poli správně zadané a pokud ano, tak datum rozparsovat do určitého tvaru a uložit do databáze.
Pokud mi poradíš nějakou vhodnou funkci, tak budu velmi rád.
12. 2. 2016 20:50:09
https://webtrh.cz/diskuse/regularni-vyraz-pro-datum-a-cas#reply1174411
TomasX
verified
rating uzivatele
(4 hodnocení)
12. 2. 2016 21:16:29
dobře, to už je lepší :). V php existuje poměrně schopná funkce strtotime(), která zvládá poměrně velké množství vstupních formátů vč. toho, který požaduješ ty. Viz jejich popis v dokumentaci http://php.net/manual/en/datetime.formats.php.
Abys správně ošetřil uživatelský vstup a uložil poté do databáze, musíš kromě samotného formátu kontrolovat samozřejmě i existenci takového data, viz můj předchozí příspěvek. K tomu je také nutné ještě zkontrolovat, jestli datum rozsahem odpovídá možném období, pokud uživatel zadává svůj datum narození, těžko bude starší než 126 let nebo se těžko narodil v budoucnosti. Pokud uživatel zadává datum třeba platnosti nějaké slevy v eshopu, těžko bude končit v minulosti nebo těžko bude končit za desítky let.
Skoro ideální kód na zpracování datumu z formuláře by měl vypadat nějak takhle, výsledek funkce je formátovaný datum pro přímé uložení do mysql. Chybové hlášky a kontroly na rozsah si určitě umíš přizpůsobit podle svého použití.
12. 2. 2016 21:16:29
https://webtrh.cz/diskuse/regularni-vyraz-pro-datum-a-cas#reply1174410
Pro odpověď se přihlašte.
Přihlásit