Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie den Dezimaltyp in PHP in einen Ganzzahltyp

So konvertieren Sie den Dezimaltyp in PHP in einen Ganzzahltyp

PHPz
PHPzOriginal
2023-03-28 13:54:271575Durchsuche

In PHP müssen wir oft einen Decimal-Typ in einen Integer-Typ konvertieren, aber das ist nicht so einfach, wie wir denken. Da der Decimal-Typ genau wie ein Gleitkommatyp ist, besteht das Problem einer ungenauen Auswahl der Dezimalstelle. In diesem Artikel erfahren Sie, wie Sie in PHP einen Dezimaltyp in einen Ganzzahltyp konvertieren.

1. Der Unterschied zwischen Decimal-Typ und Integer-Typ

Zunächst müssen wir den Unterschied zwischen Decimal-Typ und Integer-Typ verstehen. In PHP wird der Decimal-Typ als Zeichenfolge dargestellt, wie unten gezeigt:

$decimal = "3.1415926";

Und der Integer-Typ wird als Zahl dargestellt:

$integer = 31415926;

Das Hauptproblem beim Decimal-Typ besteht darin, dass Gleitkommazahlen im Computer gespeichert werden Die Genauigkeit ist inkonsistent und es können einige Fehler bei den Dezimalstellen auftreten. Dies führt oft zu Problemen in unseren Berechnungen.

2. Konvertieren Sie den Dezimaltyp in einen Ganzzahltyp.

Wenn wir den Dezimaltyp in einen Ganzzahltyp konvertieren müssen, können wir einige von PHP bereitgestellte Funktionen verwenden. Zunächst können wir die Funktion „round()“ verwenden, um den nächsten ganzzahligen Wert zu ermitteln. Wie unten gezeigt:

$decimal = "3.1415926";
$integer = round($decimal);

Auf diese Weise kann die Variable $decimal in 3 konvertiert werden.

Es gibt jedoch eine genauere und sicherere Methode, nämlich die Verwendung der bc-Mathe-Erweiterung. Diese Erweiterung bietet präzise mathematische Funktionen für Berechnungen und Konvertierungen von Dezimaltypen. In diesem Fall können wir die Funktion bcdiv() verwenden, um die Konvertierung durchzuführen. Wie unten gezeigt:

$decimal = "3.1415926";
$integer = bcdiv($decimal, "1", 0);

In diesem Beispiel ist der zweite Parameter der Funktion bcdiv() 1. Diese Zahl wird verwendet, um die Anzahl der Zeigerziffern darzustellen. In diesem Beispiel müssen wir $decimal in eine Zahl wie „3,00“ umwandeln, sodass der Exponent 2 sein sollte. Der letzte Parameter ist 0, was bedeutet, dass wir die Dezimalstellen verwerfen und nur den ganzzahligen Teil behalten müssen.

3. Zusammenfassung

In PHP ist die Konvertierung des Dezimaltyps in einen Ganzzahltyp nicht so einfach, wie wir denken. Da der Decimal-Typ Gleitkommafehler aufweist, müssen wir geeignete Methoden anwenden, um Genauigkeit und Sicherheit zu gewährleisten. Die gebräuchlichste Methode besteht darin, die Funktionen „round()“ und „bcdiv()“ in der bc-Mathematikerweiterung zu verwenden, um eine Konvertierung zu erreichen. Wir sollten die geeignete Methode entsprechend der spezifischen Situation wählen.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie den Dezimaltyp in PHP in einen Ganzzahltyp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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