###実現したいこと
PHPで日付の検証をしたいです。
###発生している問題
以下の正規表現ですが、もし形式だけあっても、その日付が存在しない(1月32日とか)が検証できないと思います。
###該当のソースコード
php
1function checkDatetimeFormat($datetime){ 2 return preg_match('/^(?P<year>[0-9]{4})\-(?P<month>[0-9]{2})-(?P<day>[0-9]{2}) ([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$/', $datetime, $m) === 1 3 && checkdate($m['month'] , $m['day'] , $m['year']); 4}
###試したこと
フォーマットを使いましたが、falseと判定されてしまいました…
php
1$datetime = '2021-1-15 16:52:10'; 2$is_datetime = checkDatetimeFormat($datetime); 3var_dump($is_datetime); 4function checkDatetimeFormat($datetime){ 5 return $datetime === date("Y-m-d H:i:s", strtotime($datetime)); 6}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/16 09:35 編集