php使用strtotime和date函数判断日期是否有效代码分
在PHP中,我们可以使用strtotime和date函数来验证日期的有效性。这是一个实用的方法,既简单又直观。让我们来看一下具体的代码实现。
我们需要一个函数来检查日期的格式是否正确。这个函数接收一个日期字符串和一个格式数组作为参数。如果给定的日期字符串无法被strtotime函数正确转换,或者无法通过任何格式验证,函数就会返回false。如果日期通过了格式验证,函数就会返回true。以下是函数的代码:
```php
function checkDateIsValid($date, $formats = array("Y-m-d", "Y/m/d")) {
$unixTime = strtotime($date);
if (!$unixTime) { // 如果strtotime无法转换日期,那么日期格式肯定不正确
return false;
}
// 循环检验日期的有效性,只要满足其中一个格式就OK
foreach ($formats as $format) {
if (date($format, $unixTime) == $date) {
return true;
}
}
return false; // 如果所有格式都不匹配,返回false
}
```
接下来,我们可以使用这个函数来验证一些日期。例如:
```php
var_dump(checkDateIsValid("2013-09-10")); // 输出true,因为这是一个有效的日期格式并且日期有效
var_dump(checkDateIsValid("2013-09-ha")); // 输出false,因为这不是一个有效的日期格式
var_dump(checkDateIsValid("2012-02-29")); // 输出true,虽然年份是闰年,但这是一个有效的日期格式并且日期有效
var_dump(checkDateIsValid("2013-02-29")); // 输出false,因为这不是一个有效的日期(2月没有29日)并且日期无效
```
以上代码的核心思路是使用strtotime函数将输入的日期字符串转换为Unix时间戳。如果转换失败,说明输入的日期格式不正确。然后,我们尝试使用不同的日期格式重新格式化这个Unix时间戳,并与原始的日期字符串进行比较。如果找到了一个匹配的格式,我们就认为这个日期是有效的。如果没有找到匹配的格式,我们就认为这个日期是无效的。这个方法简单而有效,可以帮助我们轻松验证日期的有效性。
编程语言
- php使用strtotime和date函数判断日期是否有效代码分
- PHP7新增运算符用法实例分析
- JavaScript获得url查询参数的方法
- js实现正则匹配中文标点符号的方法
- php实现利用phpexcel导出数据
- ASP 类 Class入门
- javascript多行字符串的简单实现方式
- 使用jQuery 操作table 完成单元格合并的实例
- php设计模式之工厂模式用法经典实例分析
- javascript asp教程第二课--转义字符
- PHP反射类ReflectionClass和ReflectionObject的使用方法
- 如何防止INPUT按回车自动提交表单FORM
- 使用正则表达式替换报表名称中的特殊字符(推荐
- 与文件上传有关的php配置参数总结
- jquery中取消和绑定hover事件的实现代码
- PHP里面把16进制的图片数据显示在html的img标签上