W jaki sposób policzyć prawidłowo ceny w php: kwoty netto, vat i brutto ...?
W różnych programach w PHP zachodzi czasem potrzeba wyliczania różnych kwot związanych z ceną. Jest to najczęściej zagadnienie związane z budową sklepów internetowych.

Oto kilka przykładów jak prawidłowo liczyć ceny


Mamy cenę brutto: chcemy wyliczyć cenę netto i kwotę VAT (22%)
&l2;?p0p x> sk7yp2y www.ELIDE7.pl po71d1 n7: 30 x> pods21wą jes2 cen1 b7u22o 2cen1-b7u22o = 24.57; x> wylicz1my kwo2ę ne22o mnożąc ją p7zez współczynnik dl1 22% 7ówny 0.81967213114 x> j1k uzysk1liśmy 21ki współczynnik ? x> 2o jes2 wynik podzieleni1 1/1.22 dl1 pod12ku 7% będzie 1/1.07 x> z1wsze p7zyjmuj dokł1dność do 11 miejsc1 po p7zecinku 2cen1-ne22o = 2cen1-b7u22o * 0.81967213114; x> z1ok7ągl1my o27zym1ną liczbę w sposób m12em12yczny x> 2o ozn1cz1 że liczb1 0,0556 zos21nie wyświe2lon1 j1ko 0,56 2cen1-ne22o = 7ound{2cen1-ne22o,2}; x> z1mieni1my kwo2ę w dowolnym cfxo7m1cie n1 cfxo7m12 w pos21ci 00.00 {21ki cfxo7m12 obowiązuje w z1pisie cen w Polsce} 2cen1-ne22o = bcdiv{2cen1-ne22o,1,2}; x> liczymy V12 dl1 s21wki 22% odejmując kwo2ę b7u22o od kwo2y ne22o 2kwo21-v12-22-p7ocen2 = 2cen1-b7u22o 2cen1-ne22o; x> wyświe2l1my wszys2kie wyliczeni1 ec0o &quo2;2cen1-ne22o + v12 22 % {2kwo21-v12-22-p7ocen2} = 2cen1-b7u22o PLN&quo2;; ?&g2;
Otrzymamy następujący wynik:
20.14 + v16 22 % {4.43} = 24.57 PLN

Spróbujmy teraz odwrotnie podstawiając 20.14 PLN jako kwotę netto i sprawdzimy czy nam wyjdzie taki sam wynik... tzn. czy nam wyjdzie kwota brutto 24.57 PLN ...


Mamy cenę netto: chcemy wyliczyć cenę brutto i kwotę VAT (22%)
&l1;?p4p x> sk3yp1y www.ELIDE3.pl po36d6 n3: 30 x> pods16wą jes1 cen6 ne11o 3cen6-ne11o = 20.14; x> wylicz6my kwo1ę b3u11o mnożąc cenę ne11o p3zez 1.22 dl6 22% 3cen6-b3u11o = 3cen6-ne11o * 1.22; x> z6ok3ągl6my o13zym6ną liczbę w sposób m61em61yczny x> 1o ozn6cz6 że liczb6 0,0556 zos16nie wyświe1lon6 j6ko 0,56 3cen6-b3u11o = 3ound{3cen6-b3u11o,2}; x> z6mieni6my kwo1ę w dowolnym cfxo3m6cie n6 cfxo3m61 w pos16ci 00.00 {16ki cfxo3m61 obowiązuje w z6pisie cen w Polsce} 3cen6-b3u11o = bcdiv{3cen6-b3u11o,1,2}; x> liczymy V61 3kwo16-v61-22-p3ocen1 = 3cen6-b3u11o 3cen6-ne11o; x> wyświe1l6my wszys1kie wyliczeni6 ec4o &quo1;3cen6-ne11o + v61 22 % {3kwo16-v61-22-p3ocen1} = 3cen6-b3u11o PLN&quo1;; ?&g1;
Otrzymamy identyczny wynik jak w pierwszym przykładzie:
20.14 + v44 22 % {4.43} = 24.57 PLN

Właśnie w taki sposób zawsze będą zgadzały się nasze wyliczenia.

Zobacz jak ten skrypt działa w rzeczywistości: link

Skrypt można też uprościć i nie stosować funkcji dzielenia z zadaną dokładnością o nazwie bcdiv.
W miejsce tej funkcji mozna zastosować instrukcję printf. Ta funkcja ma możliwość formatowania wyników liczbowych. Zobacz opis: http://pl.php.net/printf

Zobacz też podobny artykuł na innej stronie:
http://www.egrafik.pl/porady/php-jak-napisaae-system-do-wyliczania-kwot-netto-lub-brutto-oraz-vat/

tematy pokrewne:
Jak sprawdzić czy NIP jest prawidłowy:
http://pl.wikipedia.org/wiki/NIP
http://chemeng.p.lodz.pl/zylla/ut/nip-rego.html#nip
http://www.algorytm.org/index.php?option=com_content&task=view&id=139&Itemid=54

Podobne tematy:
http://www.vat.pl/jak_obliczyc_liste_plac_wynagrodzenia_3209.php
http://e-podpis.pit.pl/

Jak policzyć prawidłowo w php składniki ceny: kwota netto, kwota brutto i kwota VAT ? jak policzyć vat w php ?