Beste,
Weet iemand een eenvoudige manier in PHP om met staffels te rekenen?
Voorbeeld:
$huidigestandrekening = 5000;
$nieuweinvoice = 7000;
STAFFELS:
$tot6000 = "7.5"; //%
$van6000tot9000 = "11.5"; //%
$van9000tot65000= "15"; //%
//hoger als 65000 is niet mogelijk in deze case
in dit geval zou er dus
1000 @ 7.5% moeten berekend worden (want 5000 wat al op rekening stond +1000 tot max in deze schijf)
3000 @ 11.5% (volle schijf van 3000)
3000 @ 15% (3000)
Maar ik heb geen idee hoe ik dit in een PHP logica kan gaan gooien? Iemand suggesties?
- staffels
-
04-03-2022, 12:38 #1
- Berichten
- 66
- Lid sinds
- 14 Jaar
staffels
-
04-03-2022, 12:43 #2
- Berichten
- 1.290
- Lid sinds
- 13 Jaar
Re: staffels
Hi Robin,
Je zou allereerst een test kunnen doen (if/elseif/else) statement op de waarde van $huidigestandrekening.
Als deze boven 9000 ligt, dan weet je dat je sowieso dit moet toevoegen: 6000 * 0.075 en 3000 * 0.115.
Het restant is dan $huidigestandrekening - 9000. Waar je dan dus 15% van neemt.
Zo kun je voor de drie gevallen (laagste staffel, middelste staffel en hoogste staffel) een berekening opstellen. Die is immers altijd identiek. Het handigst is als je alle waarden wegschrijft in variabelen. Het mooiste zou zijn als je een array maakt met de staffels. Iets als:
$staffels = array(6000, 9000, 65000);
Als je dat doet kun je namelijk met een foreach loop door de staffels heen gaan en het dynamisch maken (zodat je in de toekomst eenvoudig de bedragen verandert, of een staffel toevoegt).
Groet, Chiel
-
06-03-2022, 18:30 #3
- Berichten
- 459
- Lid sinds
- 12 Jaar
Re: staffels
Je moet eerst wiskundig de som goed opzetten en daarna de php ervoor schrijven. Ik vraag mij alleen af of je een probleem hebt met php of wiskunde. Het bedrag is het variabel en de rest is een formule waar je het bedrag doorheen stampt en je gebruikt altijd dezelfde formule voor elk bedrag. Ik zie hier het probleem niet van php en de wiskundige formule trouwens ook niet.
Succes...
-
07-03-2022, 22:38 #4gast2632 Guest
Re: staffels
Bedoel je misschien zoiets?
PHP Code:if ($waarde > 5999 && $waarde < 9000) { $korting = 11.5;}elseif ($waarde > 8999 && $waarde < 65001) { $korting = 15;}else{ $korting = 7.5;}
-
08-03-2022, 02:42 #5
- Berichten
- 459
- Lid sinds
- 12 Jaar
Re: staffels
Als je het wilt berekenen zoals Chiel omschrijft maar in de vorm zoals Danny het aangeeft kan je het volgende gebruiken:
PHP Code:if ($waarde > 6000 && $waarde < 9001) {
$korting = (($waarde - 6000) * 0.115) + (6000 * 0.075);
}elseif ($waarde > 9000 && $waarde < 65001) {
$korting = (($waarde - 9000) * 0.15) + (6000 * 0.075) + (3000 * 0.115);
}else{
$korting = $waarde * 0.075;
}
PHP Code:if ($waarde > 6000 && $waarde < 9001) {
$korting = (($waarde - 6000) * 0.115) + 450;
}elseif ($waarde > 9000 && $waarde < 65001) {
$korting = (($waarde - 9000) * 0.15) + 795;
}else{
$korting = $waarde * 0.075;
}
Je zou zelf nog een andere formule kunnen gebruiken maar dit is de meest eenvoudige naar mijn idee.
Hopelijk heb je hier iets aan maar het is een beetje onduidelijk wat je precies wilt en of het gaat om kortingen of iets anders.
Succes...
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic