/**
* 验证是不是正确的日期格式 y-m-d y/m/d 皆可
* 是返回true 反之false
* @param type $date
* @param type $formats
* @return boolean
*/
function checkDateIsValid($date, $formats = ["Y-m-d", "Y/m/d"]) {
$unixTime = strtotime($date);
if (!$unixTime) { //strtotime转换不对,日期格式显然不对。
return false;
}
//统一转行为带前导0的格式来对比
$date1 = date("Y-m-d", $unixTime);
$date2 = date("Y/m/d", $unixTime);
// echo $date1.'---'.$date2.'---'.date("Y-m-d", $unixTime).'---';exit;
//校验日期的有效性,只要满足其中一个格式就OK
foreach ($formats as $format) {
if (date($format, $unixTime) == $date1 || date($format, $unixTime) == $date2) {
return true;
}
}
return false;
}
<pre name="code" class="php">支持"Y-m-d", "Y/m/d"两种格式的时间表示,同时支持带前导零和不带前导零的形式