2014-11-20 35 views
0

我有startdateenddate格式Y-m-d如何獲得Laravel的月份持續時間

'startdate'=>date('Y-m-d', strtotime(Input::get('startdate'))), 
'enddate'=>date('Y-m-d', strtotime(Input::get('enddate'))) 

我怎樣才能得到這兩天的時間,像Laravel 2 months1 month2 weeks

回答

2

可以使用Carbon類,它已經包含在Laravel 4,以可讀的格式獲得兩天之間的差異。

$startDate = Carbon::createFromFormat('Y-m-d', Input::get('startdate')); 
$endDate = Carbon::createFromFormat('Y-m-d', Input::get('enddate')); 

echo $startDate->diffForHumans($endDate); 
+1

如果你不需要 '之前'/ '後' 的落後字: '回聲的preg_replace( '/(.*)(前|後)/', '$ 1',$ startDate- > diffForHumans($結束日期));' – 2014-11-20 18:34:18

2

基本上,它是Carbon

$start = new Carbon(date('Y-m-d', strtotime(Input::get('startdate')))); 
$end = new Carbon(date('Y-m-d', strtotime(Input::get('enddate')))); 
$diff_days = $start->diff($end)->days; 

嗯,有更多,請查閱該文檔的詳細信息:https://github.com/briannesbitt/Carbon#api-difference

相關問題