我需要一个函数来验证GET ['date']参数中提供的任何字符串。
如果提供的字符串格式为“j-n-Y”,则该函数将返回true,并且是今天和未来之间的日期。
示例:
http://mysite.org/index.php?date=iwhechiuhwe将返回false。
http://mysite.org/index.php?date=13-5-2017将返回true。
答案 0 :(得分:0)
$dateResult = DateTime::createFromFormat('j-n-Y', $_GET['date']);
PHP的DateTime类中的此方法如果无法从请求的格式和给定字符串创建日期对象,则返回false。
进一步测试以验证给定日期是今天还是将来(如果$dateResult
尚未为假):
$now = strtotime('Y-m-d', time());
$isValid = $dateResult->getTimestamp() >= $now;