php 判断日期格式是否正确

2024-12-03 23:14:14
推荐回答(2个)
回答1:

$data='2014-11-11';//这里可以任意格式,因为strtotime函数很强大
$is_date=strtotime($data)?strtotime($data):false;
 
if($is_date===false){
    exit('日期格式非法');
}else{
    echo date('Y-m-d',$is_date);//只要提交的是合法的日期,这里都统一成2014-11-11格式
}

回答2:

说明
bool checkdate ( int $month , int $day , int $year )
如果给出的日期有效则返回 TRUE,否则返回 FALSE。检查由参数构成的日期的合法性。日期在以下情况下被认为有效:
year 的值是从 1 到 32767
month 的值是从 1 到 12
Day 的值在给定的 month所应该具有的天数范围之内,闰年已经考虑进去了。

Example #1 checkdate() 例子
var_dump(checkdate(12, 31, 2000));
var_dump(checkdate(2, 29, 2001));
?>
以上例程会输出:
bool(true)
bool(false)

字符串转换以下即可:
$str='2015-01-12';
list($y,$m,$d)=explode(‘-’,$str);
var_dump(checkdate($m,$d,$y));