用PHP比较日期
我正在开发一个php应用程序,需要一些比较日期的帮助。 我有一个日期选择输入字段(datepicker),由于客户端代码,它将始终以mm/dd/YYYY格式发布日期,例如2015年2月25日 我要做的是用php确定这个日期不晚于当前日期 最初,我将本地时区设置为:用PHP比较日期,php,function,date,Php,Function,Date,我正在开发一个php应用程序,需要一些比较日期的帮助。 我有一个日期选择输入字段(datepicker),由于客户端代码,它将始终以mm/dd/YYYY格式发布日期,例如2015年2月25日 我要做的是用php确定这个日期不晚于当前日期 最初,我将本地时区设置为: date_default_timezone_set('Europe/London'); 在代码中,我有: } elseif (date(strtotime($_POST['datepicker'])) > date('m,d,
date_default_timezone_set('Europe/London');
在代码中,我有:
} elseif (date(strtotime($_POST['datepicker'])) > date('m,d,Y')){
$displayblock.= "<br><p>The selected date is in the future!!! </p>".date("d/m/Y", strtotime($_POST['datepicker']));
$alertbox = "<script>alert('".$_POST['datepicker']." is in the future!!! Shall we try that again? :-)');</script>";
}elseif(日期(strotime($\u POST['datepicker']))>date('m,d,Y')){
$displayblock.=“
所选日期是将来!!!”.date(“d/m/Y”,strotime($\u POST['datepicker'));
$alertbox=“alert(“$\u POST['datepicker']”是将来的事!!!我们可以再试一次吗?:-);”;
这显然远远不够优雅,而且似乎也不能正确地匹配日期。
有人能帮忙吗
非常感谢,如果它们是作为字符串使用此函数提供的,您还可以对它们进行比较。第一个日期是来自html/javascript日期选择器的日期,第二个日期是服务器的实际日期:
function stringDateIsAPastDate($datestring1){
if ((date("j-m-Y", strtotime($datestring1))) <= (date("j-m-Y"))){
//here the code to do when the date inserted from the website is a past date or today
return(true);
}else{
return(false);
}
}
函数stringDateIsAPastDate($datestring1){
如果((日期(“j-m-Y”,strotime($datestring1))$now=newdatetime();
$now->format('Y-m-d');
$ding=新的日期时间($_POST['datepicker']);
$ding->format('Y-m-d');
如果($now<$ding){
echo“日期选择器在当前时间之后”;
}否则{
echo“日期选择器在当前时间之前”;
}
比较两个日期
$date1 = new DateTime('May 13th, 1986');
$date2 = new DateTime('October 28th, 1989');
$difference = $date1->diff($date2);
检查此项:
和php.net手册:
我想您可以从中使用。无论哪种方式,如果datediff不起作用,我相信您可以使用DateTime类中的一些东西来帮助您,浏览一下。如果您想要一种简单的OO方式来与时间交互,您可以使用
$date1 = new DateTime('May 13th, 1986');
$date2 = new DateTime('October 28th, 1989');
$difference = $date1->diff($date2);