Darstellung von Beträgen

radarin

Angesehenes Mitglied
Ich möchte Beträge zwingend auf 2 Stellen nach dem Komma darstellen und auf 5 Rappen genau runden:

aus 310 soll 310.00 werden, und aus 333.56 soll 333.55 werden. So funktioniert es jedenfalls nicht:

CODE $preis = 1 * 190.00;
$preis = $preis + (4 * 30.00);
$preis = round($preis,2);
$mwst = $preis / 100 * 7.6;
$summe = $preis + $mwst;
$summe = round($summe,2);



Das zeigt einen Preis von 310 und eine Summe von 333.56 an
 
auf den 5er runden geht so:

betrag*20=ergebnis1
die ganze zahl des ergebnis1 (kommastellen abschneiden) wieder durch 20 teilen.

leider beherrsche ich php nicht, deshalb kann ich dir das ganze nicht in php darstellen.

gruss

urs

 
Ne Funktion, die ich mal betreffend MWSt implementiert habe:

function price_with_MWSt($price){
$MWSt=7.6;
return number_format((round(20*($price / 100 *(100+$MWSt))))/20,2,'.',' ');
}

greez
 
super pippolino, so geht das wesentlich kürzer als ich mir das zusammengeschustert habe:

CODE
$preis = $_GET['preis'];
$mwst = $preis / 100 * 7.6;
$summe = $preis + $mwst;
$summefr = floor($summe);
$summerp0x = substr(strrchr(number_format($summe,2),"."),1,1);
$summerpx0 = substr(strrchr(number_format($summe,2),"."),2,1);
if($summerpx0==0){$summerpx0=0;$rpxx=0;}
if($summerpx0==1){$summerpx0=0;$rpxx=0;}
if($summerpx0==2){$summerpx0=0;$rpxx=0;}
if($summerpx0==3){$summerpx0=5;$rpxx=0;}
if($summerpx0==4){$summerpx0=5;$rpxx=0;}
if($summerpx0==5){$summerpx0=5;$rpxx=0;}
if($summerpx0==6){$summerpx0=5;$rpxx=0;}
if($summerpx0==7){$summerpx0=5;$rpxx=0;}
if($summerpx0==8){$summerpx0=0;$rpxx=1;}
if($summerpx0==9){$summerpx0=0;$rpxx=1;}
if($rpxx==1){$summerp0x=$summerp0x+1;}
if($summerp0x==10){$summerp0x=0;$summefr=$summefr+1;}
$endsumme=number_format($summefr.".".$summerp0x.$summerpx0,2);




Danke für Deine Vorlage
smile.gif
 
Zurück
Oben