类似于 ASP isDate() 的 PHP 日期验证用于用户提交的日期、时间或日期/时间对

标签 php asp-classic

我正在将 ASP 应用程序转换为 PHP,但在转录日期验证功能时遇到困难。

在 ASP 中,我有函数 isDate(),它允许我验证一个日期而不管它的格式。因此,如果有人输入以下任何内容,isDate() 将返回 true:

1/1/2012
January 1, 2012
Jan 12, 2010 1:00 pm
1/1/2012 1:32 pm

好处是我可以让用户以他们选择的任何格式输入数据和时间。之后,我只需付出最少的努力,就可以在不进行任何后处理的情况下更新数据库(假设返回 true)。例如:

UPDATE my_table SET date_field = @date_var WHERE my_id = @id_var
[note: SQL Server 2008]

使用 PHP,我发现验证日期/时间更加复杂。我查看了此处发布的各种问题以及文档,似乎没有一种简单的方法可以轻松验证日期或时间或日期/时间组合。

我想知道是否有可用的类(class)来完成繁重的工作。可以像 isDate() 一样工作并根据用户输入的日期/时间/日期和时间返回真/假的东西。

谢谢。

最佳答案

可以查看strtotime()的返回值查看是否可以解析日期:

if(strtotime($date) !== false) {
   // valid date/time
}

这也是规范化所有日期的方法,将它们存储为 strtotime() 的返回值。 .

关于类似于 ASP isDate() 的 PHP 日期验证用于用户提交的日期、时间或日期/时间对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8646642/

相关文章:

php - 文件上传 大文件 PHP/AJAX

php - Laravel 中的关系 0...1

sql-server - 通过 SQL 查询获取 SQL Server 架构?

html - 如何使用 rowspan 将数据库中的数据分组到 HTML 表中?

asp-classic - ASP 页面中的响应缓冲区限制超出错误

php - 在服务器后台进程中运行脚本?

php - 使用此代码我只能得到一个结果

php - Laravel Blade 模板变量

arrays - 经典的 ASP 从 SQL 数据库中提取数据并将其放入数组中

asp.net - 是否有针对 MS SQL 服务器的开源基于 Web 的管理?