• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Rechnen mit PHP

Status
Für weitere Antworten geschlossen.
Habs bearbeitet...
Würde eig kein neues Theard machen, aber konnte es irgendwie nicht mehr löschen, deswegen habe ich meine Frage, hier rein getan.

PHP:
     $price22 = 0 * str_replace(",",".", $artikel->versand);
     $price2 = 1 * str_replace(",",".", $artikel->preis);
     $price1 = $price22 + str_replace(",",".", $price2);
     $price1 = number_format($price1,2);
     $price1 = round($price1,2);
Der gibt jetzt nach 300,2 wieder nur eine Zahl an. Wo ist der Fehler?
 
Zuletzt bearbeitet:
$price22 = 0 * str_replace(",",".", $artikel->versand);

ist schonmal n schwachsinniger code da in $price22 immer 0 stehen wird

$price2 = 1 * str_replace(",",".", $artikel->preis);

hier wird dann wohl warscheinlich falsch gerechnet werden weil du einen string mit einem integer verrechnen willst die bessere schreibweise währe

$price2 = 1 * (int)str_replace(",",".", $artikel->preis);

danach rechnest du

$price1 = $price22 + str_replace(",",".", $price2);

was schwachsinn ist weil du dadurch aus $price2 was schon ein integer mit punkt ist wieder einen string machst also währe da die bessere schreibweise

$price1 = $price22 + $price2;

was wiederum eigentlich auch sinnlos ist weil du auch genau so gut schreiben kannst


$price1 = $price2;

da $price22 wie oben genannt schon 0 ist ^^ an dem code danach ist nichts auszusetzen außer vllt das er mit dem oberen code sinnlos ist ^^
 
Also ich halte es immer so, egal in welcher Programmiersprache. Gerechnet und gespeichert werden Werte immer in der dafür von der Programmiersprache vorgesehenen Art, bei PHP eben mit Dezimalpunkt. Erst bei der Ausgabe werden die einzelnen Werte in die passende Form gebracht, und zwar ihn Abhängigkeit von der Herkunft des Users.

Gruß thuemmy
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben