如何减去 Laravel5.4 中的两个日期
How to subtract two dates in Laravel5.4
我的项目 table 用户项目保存在其中并且有 start_time 和 finish_time 和价格,我给它的形式有这个代码:
<div class="form-group">
<input type="date" class="form-control" name="start_time" >
</div>
<div class="form-group">
<input type="date" class="form-control" name="finish_time" >
</div>
<div class="form-group">
<input type="text" class="form-control" name="price" >
</div>
现在,我想减去日期,如果结果为负数可以将价格和结果相乘,我该怎么做?
在您的控制器方法中,您可以计算差异:
$start_time = $request->input('start_time');
$start_time_ob = new \Carbon\Carbon($start_time);
或者您可以使用静态 Carbon::parse() 方法:
$finish_time = $request->input('finish_time');
$finish_time_ob = \Carbon\Carbon::parse($date);
为了您的目的,您可以使用这个完整的例子:
$diff = $finish_time_ob->diffInDays($start_time_ob);
你应该做的是这样的:
$start_time = \Carbon\Carbon::parse($request->input('start_time'));
$finish_time = \Carbon\Carbon::parse($request->input('finish_time'));
$price = $request->input('price');
$result = $start_time->diffInDays($finish_time, false);
if ($result < 0) {
$price = $price * $result;
}
我不知道您想减去哪些日期,因此请确保您的日期有效。您应该使用:
$result = $start_time->diffInDays($finish_time, false);
或
$result = $finish_time->diffInDays($start_time, false);
请记住,您需要将 false
作为第二个参数传递给 diffInDays
方法 - 否则您总是会得到肯定的结果。
到期日
$expirydate = \Carbon\Carbon::parse($object->end_date);
$expirydate = 2020-06-09 00:00:00
Returns 当前日期
$today = \Carbon\Carbon::now();
$today = 2019-09-05 13:53:47
剩余到期的总天数
$difference = $today->diffInDays($expirydate, false)
$difference = 277
总共还有 277 天到期。
If Days are coming in negative number it means it has been expired otherwise
yet to expire.
我的项目 table 用户项目保存在其中并且有 start_time 和 finish_time 和价格,我给它的形式有这个代码:
<div class="form-group">
<input type="date" class="form-control" name="start_time" >
</div>
<div class="form-group">
<input type="date" class="form-control" name="finish_time" >
</div>
<div class="form-group">
<input type="text" class="form-control" name="price" >
</div>
现在,我想减去日期,如果结果为负数可以将价格和结果相乘,我该怎么做?
在您的控制器方法中,您可以计算差异:
$start_time = $request->input('start_time');
$start_time_ob = new \Carbon\Carbon($start_time);
或者您可以使用静态 Carbon::parse() 方法:
$finish_time = $request->input('finish_time');
$finish_time_ob = \Carbon\Carbon::parse($date);
为了您的目的,您可以使用这个完整的例子:
$diff = $finish_time_ob->diffInDays($start_time_ob);
你应该做的是这样的:
$start_time = \Carbon\Carbon::parse($request->input('start_time'));
$finish_time = \Carbon\Carbon::parse($request->input('finish_time'));
$price = $request->input('price');
$result = $start_time->diffInDays($finish_time, false);
if ($result < 0) {
$price = $price * $result;
}
我不知道您想减去哪些日期,因此请确保您的日期有效。您应该使用:
$result = $start_time->diffInDays($finish_time, false);
或
$result = $finish_time->diffInDays($start_time, false);
请记住,您需要将 false
作为第二个参数传递给 diffInDays
方法 - 否则您总是会得到肯定的结果。
到期日
$expirydate = \Carbon\Carbon::parse($object->end_date);
$expirydate = 2020-06-09 00:00:00
Returns 当前日期
$today = \Carbon\Carbon::now();
$today = 2019-09-05 13:53:47
剩余到期的总天数
$difference = $today->diffInDays($expirydate, false)
$difference = 277
总共还有 277 天到期。
If Days are coming in negative number it means it has been expired otherwise yet to expire.