如何获得Laravel的月份持续时间

时间:2014-11-20 18:05:40

标签: laravel laravel-4

我的startdateenddate格式为Y-m-d

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

如何在这两天之间获得持续时间,例如Laravel中的2 months1 month2 weeks

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:2)

您可以使用已经包含在Laravel 4中的Carbon类,以人类可读的格式获取两天之间的差异。

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

echo $startDate->diffForHumans($endDate);