Maison >développement back-end >tutoriel php >Une brève introduction aux types entiers et aux nombres à virgule flottante dans les types de données PHP
En fait, nous avons écrit des nombres entiers. Nous avons écrit 123, j'ai 12 ans, c'est un nombre entier, ou -123, qui représentent tous des nombres entiers, alors ce que nous écrivons sont tous décimaux, et quelles valeurs numériques peut être écrit ? Vous pouvez écrire des nombres octaux et des nombres hexadécimaux, qui représentent tous des nombres entiers. Ensuite, nous devons également connaître une plage de stockage de type entier.
La plage de stockage des nombres entiers, signée : -2,1 milliards, rappelez-vous juste une plage approximative, entre positif 2,1 milliards -200 millions ~ 2,1 milliards ;
Qu'en est-il du non signé ; c'est-à-dire 0 à 4,2 milliards ; 0 à 4,2 milliards
Type à virgule flottante (également appelé nombre à virgule flottante, nombre à double précision ; double ou nombre réel réel).
Les nombres à virgule flottante ont une précision limitée. Bien que cela dépende du système, PHP utilise généralement le double format IEEE 754, donc l'erreur relative maximale due à l'arrondi est de 1.11e-16. Les opérations mathématiques non fondamentales peuvent donner lieu à des erreurs plus importantes, et la propagation des erreurs lors de l'exécution d'opérations composées doit être prise en compte.
De plus, les nombres rationnels tels que 0,1 ou 0,7 qui peuvent être représentés avec précision en décimal, quel que soit le nombre de mantisses, ne peuvent pas être représentés avec précision par le binaire utilisé en interne et ne peuvent donc pas être convertis en binaire sans perdre un peu de précision. Cela peut conduire à des résultats confus : par exemple, floor((0.1+0.7)*10) renverra généralement 7 au lieu du 8 attendu car la représentation interne du résultat est en fait quelque chose comme 7.999999999999999991118... .
Ne croyez donc jamais qu'un résultat de nombre à virgule flottante est précis jusqu'au dernier chiffre, et ne comparez jamais deux nombres à virgule flottante pour voir s'ils sont égaux.
Cet article présente le type de données PHP , le type entier et l'introduction des nombres à virgule flottante. Les amis dans le besoin peuvent se référer à
Syntaxe : Les valeurs entières peuvent être exprimées en décimal, hexadécimal ou octal, et peuvent être précédées d'un symbole facultatif (- ou +). Octal représente un nombre qui doit être précédé de 0 (zéro) et hexadécimal représente un nombre qui doit être précédé de 0x.
$int1=100; //Décimal
$int2=-123; //Nombre négatif
$int3=0123; //Nombre octal
$int4=0x1A;//Seize Numéro de base
echo PHP_INT_SIZE //Affiche un entier représenté par plusieurs octets
echo "
";
echo PHP_INT_MAX;echo "
";//Le nombre maximum d'entiers (2147483647)
$fmax=2147483648;
var_dump(PHP_INT_MAX); au-delà de la plage de entier sera interprété comme un type float. echo "
";
var_dump($fmax);
Nombre à virgule flottante : Nombre à virgule flottante (nombre double ou réel) $a=1.34;
$b=1.8e308;
$c=8e-10;
var_dump($b);
//La longueur des mots des nombres à virgule flottante est la plate-forme -dépendant, bien que la valeur maximale soit généralement de 1,8e308 et ait une précision de 14 chiffres décimaux (ne peut pas dépasser 14 chiffres)
//
La précision est calculée à partir du premier chiffre non 0 en partant de la gauche.
premier nombre non nul en partant de la gauche.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!