获得PHP的时间和日期差异

时间:2012-06-28 02:43:26

标签: php

我想要了解日期的差异。我是新手,请理解。以下是一些部分:

(原始行)

$BirthDate = "$month $day $year";
$dateBirth = date('F j, Y',strtotime($BirthDate));

这些行实际上正在工作,但是,我想添加更多信息,如小时,分钟,秒和ante meridiem。我修改了代码,这就是我所做的:

(修改后的行)

$BirthDate = "$month $day $year $hours $minutes $seconds $ampm";
$dateBirth = date('F j, Y h:i:s a',strtotime($BirthDate));

是的,原始线路工作,回显正确的输入数据。 问题是,当我执行修改后的行时,输出变为:

January 1, 1970 08:00:00 am

我无法想办法解决这个问题。请帮忙。谢谢。

2 个答案:

答案 0 :(得分:2)

使用\DateTime对象及其差异方法DateTime::dff。程序风格为date_diff

Manual entry

示例:

<?php
$datetime1 = new DateTime('2009-10-11');
$datetime2 = new DateTime('2009-10-13');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');

答案 1 :(得分:0)

也许这可以帮助

$birth_date = "2006-01-16"; 
$todays_date = date("Y-m-d"); 
$today = strtotime($todays_date); 
$b_date = strtotime($birth_date); 

if ($b_date > $today) { 
    $valid = "yes"; 
} else { 
    $valid = "no"; 
}