In einigen Fällen wird PHP das Dezimalzeichen nach der Operation zu ändern, ist hier ein Beispiel:PHP ändern das Dezimaltrennzeichen
<?php
echo $amount; //21.960000
echo $this->obj_vat->vat; //10.00
$amount= $amount + ($amount * ($this->obj_vat->vat/100));
echo $amount; //24,156
?>
Warum die Dezimaltrennzeichens Änderungen an ‚‘?
Dies ist eine mehrsprachige Website. In der spanischen Version ist das Gebietsschema auf Spanisch (es_ES) eingestellt und das Dezimaltrennzeichen ist ','. Deshalb ändert sich.
Eine Lösung ist es, die LC_NUMERIC auf Englisch zu zwingen:
setlocale(LC_ALL, $locale);
setlocale(LC_NUMERIC, 'en_GB');
Aber ich weiß nicht, ob dies eine richtige Lösung ist.
ich die gleich Ich erhalte 24,156 – pravindot17
Ich weiß nicht, was das Problem verursacht, alles ist in Ordnung. –
Sie haben vergessen zu sagen, welche Version von PHP, welchen Webserver, welche Plattform und wie laufen Sie mit PHP (SAPI, CGI, etwas anderes). Alles was zählt. setlocale-Änderungen in einem Thread können Änderungen in anderen PHP-Threads verursachen. –