日期:2014-05-17  浏览次数:20499 次

谁能帮我看看这是怎么回事?
代码如下:
<?php
function amortizationTable($pNum,$periodicPayment,$balance,$monthlyInterest)
{
$paymentInterest=round ($balance*$monthlyInterest,2);
$paymentPrincipal=round ($periodicPayment-$paymentInterest ,2);
$newBalance=round ($balance-$paymentPrincipal,2);
if ($newbalance < $paymentPrincipal){
  $newBalance=0;
}

printf("<tr><td>%d</td>",$pNum);
printf("<td>$%S</td>",number_format($newBalance,2));
printf("<td>$%S</td>",number_format($periodicPayment,2));
printf("<td>$%S</td>",number_format($paymentPrincipal,2));
printf("<td>$%S</td></tr>",number_format($paymentInterest,2));
if($newBalance>0){
$pNum++;
amortizationTable($pNum,$periodicPayment,$newBalance,$monthlyInterest);
}else{
return 0;
}
}
$balance=10000.00;
$interestRate=.0575;
$monthlyInterest=$interestRate/12;
$termLength=5;
$paymentsPerYear=12;
$paymentNumber=1;
$totalPayments=$termLength*$paymentsPerYear;
$intCalc=1 + $interestRate/$paymentsPerYear;
$periodicPayment=$balance*pow($intCalc,$totalPayments)*($intCalc-1)/(pow($intCalc,$totalPayments)-1);
$periodicPayment=round($periodicPayment,2);
echo"<table width='50%' align='center' border'1'>";
echo"<tr>
<th>Payment Number </th><th>Balance</th>
<th>Payment</th><th>Principal</th><th>Interest</th>
</tr>";
aomrtizationTable($paymentNumber,$periodicPayment,$balance,$monthlyInterest);
echo"</table>";
?>
为什么显示的结果是下面的:

Fatal error: Call to undefined function aomrtizationTable() in C:\AppServ\www\test.php on line 38
Payment Number Balance Payment Principal Interest 


------解决方案--------------------
aomrtizationTable($paymentNumber,$periodicPayment,$balance,$monthlyInterest);
amo ... 不是 aom
------解决方案--------------------
注意大小写!
PHP code
function amortizationTable($pNum,$periodicPayment,$balance,$monthlyInterest) {
  $paymentInterest=round ($balance*$monthlyInterest,2);
  $paymentPrincipal=round ($periodicPayment-$paymentInterest ,2);
  $newBalance=round ($balance-$paymentPrincipal,2);
  if ($newBalance < $paymentPrincipal){
    $newBalance=0;
  }

  printf("<tr><td>%d</td>",$pNum);
  printf("<td>$%s</td>",number_format($newBalance,2));
  printf("<td>$%s</td>",number_format($periodicPayment,2));
  printf("<td>$%s</td>",number_format($paymentPrincipal,2));
  printf("<td>$%s</td></tr>",number_format($paymentInterest,2));
  if($newBalance>0){
    $pNum++;
    amortizationTable($pNum,$periodicPayment,$newBalance,$monthlyInterest);
  }else{
    return 0;
  }
}