如何在laravel

我一直在分析我的应用程序的到期日的正确计算。我正在使用借贷应用程序,需要在其中显示借款人的到期日。

说贷款的批准日期是2019-10-27,今天是11-5-2019。付款方案是动态的。取决于管理员的设置。在这个例子中,付款方式是每周一次,所以我只需要说;

$duedate = date('M d Y',strtotime($loan_application->date_approval. ' + '.$loan_application->scheme->num_days.' days') );
在上面的示例中,

假定截止日期为2019年11月3日。现在如何说下一个截止日期为2019年11月10日?

我真的试图分析,这是我的想法。

我得到批准日期和NOW()之间的差额

$diff = Carbon::createFromTimestamp(strtotime($loan_application->date_approval))->diff(Carbon::now())->days;

现在我将$ diff与$ loan_application-> scheme-> num_days进行了比较。因此,假设$ diff = 9和$ loan_application-> scheme-> num_days = 7

现在我创建了条件

if ($diff > $loan_application->scheme->num_days) {
     //should display 
     Nov 10,2019
     //because the current date is already Nov 5
}

在11月10日之后,又+ 7天,再+ 7天,依此类推。

这是我已经拥有的完整代码;

$dateApproved = Carbon::parse($loan_application->date_approval)->toFormattedDateString();
$now = Carbon::today('M d Y');
$duedate = date('M d Y',strtotime($loan_application->date_approval. ' + '.$loan_application->scheme->num_days.' days') );

$diff = Carbon::createFromTimestamp(strtotime($loan_application->date_approval))->diff(Carbon::now())->days;

$numOfScheme = $loan_application->loanDuration->num_days / $loan_application->scheme->num_days;

if ($diff > $loan_application->scheme->num_days) {

} 

希望您能理解我的问题。请帮忙。提前非常感谢您。

这将增加付款方案的天数。在我的例子中是7天。但是如何告诉我的代码今天已经晚了2天,所以还要再增加7天

chenyong715 回答:如何在laravel

花了一些时间,但我理解你的问题。

$date_approval = Carbon::createFromTimestamp(strtotime($loan_application->date_approval));
$scheme_numdays = $loan_application->scheme->num_days;

$days = (intdiv($date_approval->diff(Carbon::now())->days,$scheme_numdays) + 1) * $scheme_numdays

$due_date = $date_approval->addDays($days)->format('M d Y');

intdiv只是php的整数除法。

本文链接:https://www.f2er.com/3163866.html

大家都在问