Php 如何根据每月或每周循环贷款摊销的日期范围
我正在制定贷款摊销计划,需要日期循环的帮助。我已经能够得到付款的时间表,但将需要帮助的日期包括在内。请帮我把日期循环一下。 谢谢Php 如何根据每月或每周循环贷款摊销的日期范围,php,mysql,ajax,Php,Mysql,Ajax,我正在制定贷款摊销计划,需要日期循环的帮助。我已经能够得到付款的时间表,但将需要帮助的日期包括在内。请帮我把日期循环一下。 谢谢 echo'; echo“#支付利息本金余额”; $start_date='2014-12-14'; $end_date='2015-03-12'; $count=0; 做{ $count++; //计算未偿余额的利息 $利息=$余额*$利率/100; //哪部分付款适用于本金? $本金=$付款-$利息; //注意收支平衡 如果($余额
echo';
echo“#支付利息本金余额”;
$start_date='2014-12-14';
$end_date='2015-03-12';
$count=0;
做{
$count++;
//计算未偿余额的利息
$利息=$余额*$利率/100;
//哪部分付款适用于本金?
$本金=$付款-$利息;
//注意收支平衡
如果($余额<$付款){
$本金=$余额;
$付款=$利息+$本金;
}//如果
//通过支付本金减少余额
$余额=$余额-$本金;
//注意留下微小平衡的舍入误差
如果($余额<0){
$principal=$principal+$balance;
$利息=$利息-$余额;
美元余额=0;
}//如果
回声“;
回显“$count”;
回音“.number_格式($payment,2,”,“,”)”);
回音“.number_格式($interest,2,”,“,”,”)”;
echo“.number_格式($principal,2,”,“,”)”;
回音“.number_格式($balance,2,”,“,”)”);
回声“;
@$totPayment=$totPayment+$payment;
@$totInterest=$totInterest+$interest;
@$totPrincipal=$totPrincipal+$principal;
如果($付款<$利息){
回声“;
echo“付款<利息金额-利率过高,或付款过低”;
出口
}//如果
}而($余额>0);
回声“;
回声“;
回音“.number_格式($totPayment,2,”,“,”)”;
echo“.number_格式($totInterest,2,”,“,”)”;
echo“.number_格式($totPrincipal,2,”,“,”)”;
回声“;
回声“;
回声“;
谢谢
你也可以使用
你也可以使用
你也可以使用
你也可以使用
请澄清您希望如何循环日期。我看不到只使用声明的日期变量。另外,您标记了MySQL,但我在代码中没有看到查询。
$interest
、$payment
、$balance
的值是否来自您的数据库?每个都有具体的日期吗?然后,所有计算字段和if/Then逻辑都可以写入SQL查询,并迭代到PHP数组中,该数组输出到表行和单元格中。用户需要从表单中输入$interest、$payment。不要用MySQL循环,如果你能帮我解决MySQL循环的问题。谢谢,请澄清您希望日期循环的方式。我看不到只使用声明的日期变量。另外,您标记了MySQL,但我在代码中没有看到查询。$interest
、$payment
、$balance
的值是否来自您的数据库?每个都有具体的日期吗?然后,所有计算字段和if/Then逻辑都可以写入SQL查询,并迭代到PHP数组中,该数组输出到表行和单元格中。用户需要从表单中输入$interest、$payment。不要用MySQL循环,如果你能帮我解决MySQL循环的问题。谢谢,请澄清您希望日期循环的方式。我看不到只使用声明的日期变量。另外,您标记了MySQL,但我在代码中没有看到查询。$interest
、$payment
、$balance
的值是否来自您的数据库?每个都有具体的日期吗?然后,所有计算字段和if/Then逻辑都可以写入SQL查询,并迭代到PHP数组中,该数组输出到表行和单元格中。用户需要从表单中输入$interest、$payment。不要用MySQL循环,如果你能帮我解决MySQL循环的问题。谢谢,请澄清您希望日期循环的方式。我看不到只使用声明的日期变量。另外,您标记了MySQL,但我在代码中没有看到查询。$interest
、$payment
、$balance
的值是否来自您的数据库?每个都有具体的日期吗?然后,所有计算字段和if/Then逻辑都可以写入SQL查询,并迭代到PHP数组中,该数组输出到表行和单元格中。用户需要从表单中输入$interest、$payment。不要用MySQL循环,如果你能帮我解决MySQL循环的问题。谢谢,那么循环呢?有了它,你可以循环数周或数月。为/while添加一个,
是你的工作。请如何循环?有了这个,你可以循环数周和数月。为/while添加一个,
是你的工作。请如何循环?有了这个,你可以循环数周和数月。为/while添加一个,
是你的工作。请如何循环?有了这个,你可以循环数周和数月。为/while添加是您的工作。
echo '<table border="1">';
echo '<tr><th>#</th><th>PAYMENT</th><th>INTEREST</th><th>PRINCIPAL</th><th>BALANCE</th></tr>';
$start_date = '2014-12-14';
$end_date = '2015-03-12';
$count = 0;
do {
$count++;
// calculate interest on outstanding balance
$interest = $balance * $rate/100;
// what portion of payment applies to principal?
$principal = $payment - $interest;
// watch out for balance < payment
if ($balance < $payment) {
$principal = $balance;
$payment = $interest + $principal;
} // if
// reduce balance by principal paid
$balance = $balance - $principal;
// watch for rounding error that leaves a tiny balance
if ($balance < 0) {
$principal = $principal + $balance;
$interest = $interest - $balance;
$balance = 0;
} // if
echo "<tr>";
echo "<td>$count</td>";
echo "<td>" .number_format($payment, 2, ".", ",") ."</td>";
echo "<td>" .number_format($interest, 2, ".", ",") ."</td>";
echo "<td>" .number_format($principal, 2, ".", ",") ."</td>";
echo "<td>" .number_format($balance, 2, ".", ",") ."</td>";
echo "</tr>";
@$totPayment = $totPayment + $payment;
@$totInterest = $totInterest + $interest;
@$totPrincipal = $totPrincipal + $principal;
if ($payment < $interest) {
echo "</table>";
echo "<p>Payment < Interest amount - rate is too high, or payment is too low</p>";
exit;
} // if
} while ($balance > 0);
echo "<tr>";
echo "<td> </td>";
echo "<td><b>" .number_format($totPayment, 2, ".", ",") ."</b></td>";
echo "<td><b>" .number_format($totInterest, 2, ".", ",") ."</b></td>";
echo "<td><b>" .number_format($totPrincipal, 2, ".", ",") ."</b></td>";
echo "<td> </td>";
echo "</tr>";
echo "</table>";
$timestampInOneWeek = strtotime('+1 week');
$timestampOneMonthAfter01january = strtotime('+1 month', 1419984000);
$month_later = new DateTime('2000-01-01');
$month_later->add(new DateInterval('P1M'));