热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php正则验证日期时间格式实例代码_PHP教程

php正则验证日期时间格式实例代码。利用php来验证日期格式我们可以使用checkdate()函数与正则表达式来验证,下面我一一给各位同学介绍了我在验证日期格式一些过程,最终得出
利用php来验证日期格式我们可以使用checkdate()函数与正则表达式来验证,下面我一一给各位同学介绍了我在验证日期格式一些过程,最终得出最简单办法。

1.使用正则验证日期时间格式
主要使用ereg、preg_match等php函数。
有个非常简单的,

代码如下
$dateTime=”2010-6-4 00:00:00″;
if(preg_match(“/^d{4}-d{2}-d{2} d{2}:d{2}:d{2}$/s”,$dateTime))
{
echo “Yes”;
}else{
echo “No”;
}

可是这个正则只验证了数字,并未对边界值进行验证,并不全面,于是有人写了这个正则

代码如下

regex = “^((d{2}(([02468][048])|([13579][26]))[-/s]?((((0?[13578]
)|(1[02]))[-/s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[4
69])|(11))[-/s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[-/
s]?((0?[1-9])|([1-2][0-9])))))|(d{2}(([02468][1235679])|([1
3579][01345789]))[-/s]?((((0?[13578])|(1[02]))[-/s]?((
0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[-/s]?((
0?[1-9])|([1-2][0-9])|(30)))|(0?2[-/s]?((0?[1-9])|(1[0-9]
)|(2[0-8])))))) “; //日期部分
regex += “(s(((0?[0-9])|([1-2][0-3])):([0-5]?[0-9])((s)|(:([0-5]?[0-9])))))?$”; //时间部分

丫的这简直就是神的作品。
于是我不得不放弃使用正则来验证时间格式合法性。

2.对时间字符串进行拆解分别验证日期时间格式。
主要用到checkdate等php函数。
这个方法很不错,验证也准确,可是代码写起来麻烦,需要将日期和时间分别拆解,日期使用checkdate($k[1],$k[2],$k[0])验证,时间又需要拆解逐个检查。

其实可以综合了上述两种方法来使用,操作也方便得多。
1.首先使用正则验证是否为“2011-11-07 12:30:55”这种格式。

代码如下
preg_match(“/^d{4}-d{2}-d{2} d{2}:d{2}:d{2}$/s”,$dateTime)

就可以了
2.然后使用strtotime()函数判断验证,传入日期字符串即可。
strtotime()函数默认返回指定日期时间字符串对应的UNIX时间戳。
strtotime()函数有个特点,就是如果传入日期字符串格式错误的话会返回false,而且支持各种的日期格式,非常方便。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/628719.htmlTechArticle利用php来验证日期格式我们可以使用checkdate()函数与正则表达式来验证,下面我一一给各位同学介绍了我在验证日期格式一些过程,最终得出...


推荐阅读
  • 本文提供了一个关于AC自动机(Aho-Corasick Algorithm)的详细解析与实现方法,特别针对P3796题目进行了深入探讨。文章不仅涵盖了AC自动机的基本概念,还重点讲解了如何通过构建失败指针(fail pointer)来提高字符串匹配效率。 ... [详细]
  • 本报告记录了嵌入式软件设计课程中的第二次实验,主要探讨了使用KEIL V5开发环境和ST固件库进行GPIO控制及按键响应编程的方法。通过实际操作,加深了对嵌入式系统硬件接口编程的理解。 ... [详细]
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • LeetCode 102 - 二叉树层次遍历详解
    本文详细解析了LeetCode第102题——二叉树的层次遍历问题,提供了C++语言的实现代码,并对算法的核心思想和具体步骤进行了深入讲解。 ... [详细]
  • 本文提供了一个详尽的前端开发资源列表,涵盖了从基础入门到高级应用的各个方面,包括HTML5、CSS3、JavaScript框架及库、移动开发、API接口、工具与插件等。 ... [详细]
  • JavaScript 中引号的多层嵌套使用技巧
    本文详细介绍了在 JavaScript 编程中如何处理引号的多级嵌套问题,包括双引号、单引号以及转义字符的正确使用方法。 ... [详细]
  • 解决UIScrollView自动偏移问题的方法
    本文介绍了一种有效的方法来解决在使用UIScrollView时出现的自动向下偏移的问题,通过调整特定的属性设置,可以确保滚动视图正常显示。 ... [详细]
  • 如何高效渲染JSON数据
    本文介绍了在控制器中返回JSON结果的方法,并详细说明了如何利用jQuery处理和展示这些数据,为Web开发提供了实用的技巧。 ... [详细]
  • 本文详细介绍了五种常用的PHP排序算法——冒泡排序、选择排序、插入排序、希尔排序和堆排序。每种算法都附有代码示例,并通过打印和延时操作来直观展示排序过程。欢迎指出任何错误。 ... [详细]
  • Awk是一款功能强大的文本分析与处理工具,尤其在数据解析和报告生成方面表现突出。它通过读取由换行符分隔的记录,并按照指定的字段分隔符来划分和处理这些记录,从而实现复杂的数据操作。 ... [详细]
  • 深入解析Unity3D游戏开发中的音频播放技术
    在游戏开发中,音频播放是提升玩家沉浸感的关键因素之一。本文将探讨如何在Unity3D中高效地管理和播放不同类型的游戏音频,包括背景音乐和效果音效,并介绍实现这些功能的具体步骤。 ... [详细]
  • 使用OpenGL实现三维空间中任意两点间圆柱体管道的绘制
    本文介绍了如何利用OpenGL在三维空间中的任意两个点之间绘制具有指定半径的圆柱体管道。鉴于OpenGL较为底层,许多功能需自行实现,文中提供了详细的代码示例及解析。 ... [详细]
  • 本文介绍如何使用R语言中的相关包来解析和转换搜狗细胞词库(.scel格式),并将其导出为CSV文件,以便于后续的数据分析和文本挖掘任务。 ... [详细]
  • 本文详细介绍如何在SSM(Spring + Spring MVC + MyBatis)框架中实现分页功能。包括分页的基本概念、数据准备、前端分页栏的设计与实现、后端分页逻辑的编写以及最终的测试步骤。 ... [详细]
  • 数据输入验证与控件绑定方法
    本文提供了多种数据输入验证函数及控件绑定方法的实现代码,包括电话号码、数字、传真、邮政编码、电子邮件和网址的验证,以及报表绑定和自动编号等功能。 ... [详细]
author-avatar
AAAAaaaa叶子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有