Heim  >  Artikel  >  Backend-Entwicklung  >  Eine kurze Einführung in Ganzzahltypen und Gleitkommazahlen in PHP-Datentypen

Eine kurze Einführung in Ganzzahltypen und Gleitkommazahlen in PHP-Datentypen

怪我咯
怪我咯Original
2017-07-11 14:03:011475Durchsuche

Tatsächlich haben wir 123 geschrieben, mein Alter ist 12, was eine ganze Zahl ist, oder -123, die alle ganze Zahlen darstellen können geschrieben werden? Sie können Oktalzahlen und Hexadezimalzahlen schreiben, die alle ganze Zahlen darstellen. Dann müssen wir auch einen Speicherbereich vom Typ Integer kennen.

Der Speicherbereich ganzer Zahlen, vorzeichenbehaftet: -2,1 Milliarden, erinnern Sie sich nur an einen groben Bereich zwischen positiven 2,1 Milliarden und -200 Millionen bis 2,1 Milliarden.

Was ist mit vorzeichenlosen Zahlen; das sind 0 bis 4,2 Milliarden; oder reelle Zahl reell).

Gleitkommazahlen haben eine begrenzte Genauigkeit. Obwohl es vom System abhängt, verwendet PHP normalerweise das IEEE 754-Doppelformat, sodass der maximale relative Fehler aufgrund der Rundung 1,11e-16 beträgt. Nicht grundlegende mathematische Operationen können zu größeren Fehlern führen, und bei der Ausführung zusammengesetzter Operationen muss die Fehlerfortpflanzung berücksichtigt werden. Außerdem können rationale Zahlen wie 0,1 oder 0,7, die genau in Dezimalzahlen dargestellt werden können, unabhängig von der Anzahl der Mantissen, durch die intern verwendete Binärzahl nicht genau dargestellt werden und können daher ohne sie nicht in Binärzahlen umgewandelt werden etwas an Präzision verlieren. Dies kann zu verwirrenden Ergebnissen führen: Beispielsweise gibt floor((0.1+0.7)*10) normalerweise 7 statt der erwarteten 8 zurück, da die interne Darstellung des Ergebnisses tatsächlich etwa 7.9999999999999991118... ist.

Vertrauen Sie also niemals darauf, dass das Ergebnis einer Gleitkommazahl bis zur letzten Ziffer genau ist, und vergleichen Sie niemals zwei Gleitkommazahlen, um festzustellen, ob sie gleich sind.

In diesem Artikel werden der

PHP-Datentyp

, der

Ganzzahltyp

und die Einführung von Gleitkommazahlen vorgestellt. Freunde in Not können sich auf Syntax beziehen: Ganzzahlige Werte können dezimal, hexadezimal oder oktal ausgedrückt werden und können durch ein optionales Symbol (- oder +) vorangestellt werden. Oktal stellt eine Zahl dar, der 0 (Null) vorangestellt werden muss, und Hexadezimal stellt eine Zahl dar, der 0x vorangestellt werden muss. $int1=100; //Dezimal

$int2=-123; //Negative Zahl

$int3=0123; //Oktalzahl

$int4=0x1A;//Sechzehn Basiszahl




echo

PHP_INT_SIZE

; //Zeige eine durch mehrere Bytes dargestellte Ganzzahl an

echo "
";

echo PHP_INT_MAX;echo "
";//Die maximale Anzahl von Ganzzahlen (2147483647)
$fmax=2147483648;
var_dump(PHP_INT_MAX); //Eine Zahl Werte außerhalb des Bereichs von integer
werden als Float-Typ interpretiert.
echo "
";var_dump($fmax);

Gleitkommazahl: Gleitkommazahl (doppelt oder reell)

$a=1.34;

$b=1.8e308;$c=8e-10; var_dump($b);
//Die Wortlänge von Gleitkommazahlen ist plattform- abhängig, obwohl der Maximalwert normalerweise 1,8e308 beträgt und eine Genauigkeit von 14 Dezimalstellen hat (kann 14 Stellen nicht überschreiten)
//
Die Genauigkeit wird ab der ersten Nicht-0-Ziffer von links berechnet.


Zum Beispiel: $a=567,9999899 //Ausgabe 567,9999899$b=789,8812345678543 //Ausgabe 789,88123456785

$c=0,000000008907 777777 //Ausgabe 0,000000008907777777

Wichtiges Verständnis: Präzision Berechnen Sie von der

ersten Zahl ungleich Null

von links beginnend.

Das obige ist der detaillierte Inhalt vonEine kurze Einführung in Ganzzahltypen und Gleitkommazahlen in PHP-Datentypen. 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