php - PHP中如何确保日期有效?

标签 php validation date

我一直在使用 date_parse 方法进行输入验证,这似乎很好......只是它实际上并没有验证日期的正确性。

例如:

date_parse("2010/9/31/"); // returns FALSE 
date_parse("2010-9-31"); // should return FALSE!

如何才能验证 2010-9-31 实际上是无效日期?

最佳答案

<?php 
function is_date( $str ) 
{ 
  $stamp = strtotime( $str ); 

  if (!is_numeric($stamp)) 
  { 
     return FALSE; 
  } 
  $month = date( 'm', $stamp ); 
  $day   = date( 'd', $stamp ); 
  $year  = date( 'Y', $stamp ); 

  if (checkdate($month, $day, $year)) 
  { 
     return TRUE; 
  } 

  return FALSE; 
} 
?>

来源:http://php.net/manual/en/function.checkdate.php

关于php - PHP中如何确保日期有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6833869/

相关文章:

javascript - d3 reduce 方法返回 NaN

php - 使用 Bootstrap 对 PHP 和 MYSQL 进行分页

php - 如何测试 Windows 上的文件是否可以从 PHP 中删除?

jquery - 如何对等于 0 的值进行 jquery 验证,但当其为 null/空时则不进行验证

validation - PrimeFaces 禁用取消按钮验证

c# - 验证文本框不起作用

php - mysql 显示表中最早的日期

java - 使用 Jersey 读取时区和 JSON

php - 从我的 php 应用程序在 google 驱动器中打开并编辑

php - ElasticSearch PHP API : Waiting did not resolve future