-1
私は正規表現に新たなんだと私は例えば、日付にパターンを策定する方法を理解する問題を抱えている(2011年8月9日)正規表現パターン(例:2011年8月9日)
私は正規表現に新たなんだと私は例えば、日付にパターンを策定する方法を理解する問題を抱えている(2011年8月9日)正規表現パターン(例:2011年8月9日)
正規表現です日付検証には最適ではありません。 PHPの組み込み関数を使用してください。
あなたは、このようにそれを行うことができます。
function validateDate($date, $format = 'Y-m-d H:i:s')
{
$d = DateTime::createFromFormat($format, $date);
return $d && $d->format($format) == $date;
}
からコピーされた、このようにそれを使用します。
var_dump(validateDate('August 9, 2011', 'F j, Y')); # true
さまざまな渡すことができます日付形式は次のとおりです。
var_dump(validateDate('2012-02-28', 'Y-m-d')); # true
var_dump(validateDate('28/02/2012', 'd/m/Y')); # true
var_dump(validateDate('30/02/2012', 'd/m/Y')); # false
var_dump(validateDate('14:50', 'H:i')); # true
var_dump(validateDate('14:77', 'H:i')); # false
ありがとう! DateTime形式で試してみましたが、うまくいきました。 – Steven
これまでに何を試みましたか? – campovski
正規表現を使用しないでください。PHPの 'strtotime'または' DateTime'を使用してください。 –
@BjörnTantauDateTimeを使用して、かなりうまくいきました。ありがとう! – Steven