Umgang mit Beträgen in PHP

藏色散人
Freigeben: 2023-04-07 20:58:01
nach vorne
4240 Leute haben es durchsucht

Einführung

Codes, die den Betrag betreffen, müssen mit Vorsicht gehandhabt werden. Ich hatte kürzlich zufällig eine verwandte Funktion, daher werde ich im Folgenden kurz darauf eingehen.

Speicher

PHPs Gleitkommazahlen können nicht genau berechnet werden. Weitere Informationen finden Sie unter „Dinge, die Sie über PHP-Gleitkommazahlen wissen sollten“. dieser Artikel. Glücklicherweise haben Beträge im Allgemeinen nicht zu viele Dezimalstellen. Wenn es also um die Speicherung geht, wird sie, kurz gesagt, in Minuteneinheiten gespeichert. In MySQL reicht es aus, es im Typ int zu speichern (wählen Sie den entsprechenden Feldtyp aus).

Berechnung

Oben wurde erwähnt, dass die Speicherung in Punkteinheiten erfolgt, d. h. 1 Yuan wird als 100 Punkte gespeichert. Für Berechnungen können Sie die in PHP integrierte BC Math-Funktionsreihe verwenden. Ich werde in Zukunft noch eine ausführliche Erklärung schreiben.

Betrag formatieren

Das Folgende ist ein Beispiel für die Formatierung des Betrags

/**
     * 格式化金额
     * @param $price
     * @return string
     */
    public function formatPrice($price)
    {
        if (!is_numeric($price)) {
            $price = 0;
        }
        return number_format(bcdiv($price, 100, 2), 2);
    }
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonUmgang mit Beträgen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage