Odtworzenie wartości funkcji PMT z Excela

0

Cześć,

próbuję w PHP obliczyć wartość jaką zwraca funkcja PMT w excel jednak nie otrzymuję takiego samego wyniku.

Formuła w excel

=PMT((7,25%+1,5%)/12;48;160000-16000;-72000)

W PHP próbuję to podstawić do takiego kodu

$PMT = (-$fv - $pv * pow(1 + $rate, $nper)) /
    (1 + $rate * $type) /
    ((pow(1 + $rate, $nper) - 1) / $rate);

kod znaleziony w necie jednak nie działa.

Wynik jest nieprawidłowy. Wynik z excel

2308,19
0

Podaj dokładnie co masz na wejściu obu funkcji - wszystkie argumenty i ich wartości i co masz na wyjściu. Może ktoś pomoże.
BTW może być tak, że np. MS Excel i jakiś OpenOffice Calc mają taką funkcję inaczej zaimplementowaną, więc opisz może trochę bardziej jak i gdzie testujesz.

0

Zweryfikowałem trochę i ogólnie ten kod PHP który podałem jest prawidłowy. Problem leży po mojej stronie w zmiennej $rate

0

Podając procent obliczałem wartość czyli procent z 144000
na podstawie tego

=PMT((7,25%+1,5%)/12;48;160000-16000;-72000)

natomiast prawidłowa zmienna $rate aby uzyskać dokładnie ten sam wynik

$rate = ((7.25 + 1.5)/12) / 100;
0

Aby wywołać funkcję PMT w PHP, możesz użyć funkcji bcmath_pmt(). Funkcja ta przyjmuje następujące argumenty:

$rate - stopa procentowa
$nper - liczba rat
$pv - wartość obecna (wartość kredytu)
$fv - wartość przyszła (opcjonalnie, domyślnie 0)
$type - określa, czy raty są wypłacane na początku czy na końcu każdego okresu (opcjonalnie, domyślnie 0)
Oto przykład użycia funkcji bcmath_pmt():

$rate = 0.05;
$nper = 60;
$pv = 10000;
$fv = 0;
$type = 0;

$pmt = bcmath_pmt($rate, $nper, $pv, $fv, $type);

echo $pmt;

W tym przykładzie obliczamy wysokość raty kredytu o wartości 10000 zł, oprocentowanego w wysokości 5% w skali roku, rozłożonego na 60 rat. Wysokość raty zostanie wyświetlona na ekranie.

Ewentualnie możesz dodać ją samemu

function pmt($rate, $nper, $pv, $fv = 0, $type = 0) {
  $pmt = (-$rate * ($pv * pow(1 + $rate, $nper) + $fv)) / (1 - pow(1 + $rate, $nper));
  return $pmt;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1