PHPで文字列が日時であるかをチェックする

PHP で文字列が日時であるかをチェックする関数を紹介します。PHP公式ウェブサイトでglavicにより提案された方式です。

ソースコード

/**
 * 文字列が日時であるかをチェックします
 * @param string $str 日時文字列
 * @param string $format 日時フォーマット
 * @return bool 文字列が指定されたフォーマットで有効な日時の場合はtrue、それ以外はfalse
 */
function validateDateTimeFormat($str, $format = 'Y-m-d H:i:s')
{
	$d = DateTime::createFromFormat($format, $str);
	return $d && $d->format($format) == $str;
}

検証

日時文字列と日時フォーマットを指定して関数を実行してください。日時フォーマットを省略すると "Y-m-d H:i:s" のフォーマットでチェックします。

引数の入力

validateDateTimeFormat(
 "
,
 ");

検証結果

Follow me!

photo by:Yucel Moran