2015-04-24 45 views
-2

我有一個分貝,我存儲更新日期爲date("d-m-Y")我想從這個日期扣除另一個日期。Php日期減去日期並打印它們自定義格式

像2015年1月10日 - 2012年4月7日

我想打印結果爲前3年3個mounths和3天前

我該怎麼做?

+0

時間格式您是否嘗試過什麼樣的代碼,在這裏首先顯示.. – SHAZ

回答

2

這裏是您的需要,

<?php 
    $date1 = new DateTime('04-07-2012'); // old date 
    $date2 = new DateTime('01-10-2015'); // new date 
    $interval = $date1->diff($date2); // date differ function 
    echo $interval->format("%y years %m months %d days ago"); // formatting date 
?> 

OUTPUT:3歲2個月11天以前

您也可以參考:Date Time Difference

+0

該代碼可以使用2012年4月7日 - 2015年1月10日這兩個2012-07- 04 - 2015-10-01它如何展現哪一個是月,哪一個是白天? –

+0

PHP日期時間類構造函數接受參數在這兩種情況下像「d-m-Y」或「Y-m-d」解析它在時間字符串。所以它可以由班級處理。閱讀doc:http://php.net/manual/en/datetime.add.php以獲得更好的理解 – SHAZ

0

使用下面的代碼獲得了天差:

$date1=date_create("2013-03-15"); 
$date2=date_create("2013-12-12"); 
$diff=date_diff($date1,$date2); 
echo $diff->format("%y years, %m months, %d days ago"); 
// will print "0 years, 8 months, 27 days ago" 
0
<?php 
$datetime1 = date_create('2009-10-11'); 
$datetime2 = date_create('2009-10-13'); 
$interval = date_diff($datetime1, $datetime2); 
echo $interval->format('%R%a days'); 
?> 

可以reffer在http://php.net/manual