Maison > développement back-end > Problème PHP > php défini sur un type entier long

php défini sur un type entier long

王林
Libérer: 2023-05-06 18:36:07
original
790 Les gens l'ont consulté

PHP est un langage de programmation généraliste de haut niveau largement utilisé dans le développement Web. PHP a un paramètre par défaut selon lequel les types entiers sont des entiers signés 32 bits. Cela signifie que le plus grand entier pouvant être représenté est 2^31-1, soit 2147483647. Si vous devez gérer de grands nombres, tels que des entiers très grands ou des entiers dépassant 32 bits, vous devez définir le type entier en PHP sur le type entier long.

Pourquoi devez-vous définir PHP sur un type entier long ?

Le type entier par défaut de PHP peut ne pas répondre à certains besoins. Par exemple, lorsque vous devez effectuer des calculs sur de grands nombres, le type entier par défaut de PHP peut renvoyer des résultats de calcul incorrects. En effet, le type entier par défaut de PHP ne peut représenter qu'un maximum d'entiers signés de 32 bits. Si le résultat de votre calcul dépasse cette plage, un débordement se produira, entraînant des résultats de calcul incorrects.

Le type entier long vous permet d'effectuer des calculs de grands nombres et des calculs d'entiers dépassant 32 bits sans erreurs de débordement. Lorsque le type entier PHP est défini sur long, vous pouvez utiliser de nouvelles fonctions mathématiques telles que la fonction GMP pour effectuer des calculs sur un grand nombre.

Comment définir PHP sur un type entier long ?

Pour définir PHP sur le type entier long, vous devez apporter des modifications au fichier php.ini. Tout d’abord, vous devez trouver l’emplacement du fichier php.ini. Sur les systèmes Unix/Linux, ce fichier se trouve généralement dans /etc/php.ini ou /etc/php5.ini. Sous les systèmes Windows, le fichier php.ini se trouve dans le répertoire d'installation de PHP. Après avoir ouvert le fichier php.ini, vous devez rechercher la ligne suivante :

; Default value: On
; Development value: Off
; Production value: Off
 
; http://php.net/precision
precision = 14
Copier après la connexion

Cette ligne vous permet de définir la précision des nombres à virgule flottante. Vous devez définir le paramètre "precision" sur -1 pour que PHP puisse être défini sur un type entier long. La première ligne modifiée devrait ressembler à ceci :

; Default value: On
; Development value: Off
; Production value: Off
 
; http://php.net/precision
precision = -1
Copier après la connexion

Après avoir terminé la modification, vous devez redémarrer l'interpréteur PHP pour vous assurer que les modifications prennent effet.

Vous vous demandez peut-être pourquoi avez-vous besoin de définir le paramètre de précision float sur -1 pour définir PHP sur un type entier long ? En effet, si vous définissez la précision sur 0, tous les calculs en virgule flottante seront désactivés, bien que ce ne soit pas votre objectif initial. D'un autre côté, si vous définissez la précision sur 1, PHP sera défini sur un type entier court.

Choses à noter

Veuillez noter qu'après avoir défini le type entier sur le type entier long en PHP, tous les calculs d'entiers utiliseront le type entier long. Cela entraînera des calculs plus lents, en particulier lorsqu'il s'agit de grands nombres. Si votre application n'a besoin de gérer qu'un petit nombre de calculs sur de grands nombres, il est préférable de ne pas définir PHP sur le type entier long.

De plus, après avoir défini PHP sur le type entier long, vous devrez également utiliser la fonction GMP en PHP pour effectuer des calculs sur un grand nombre. Ces fonctions se trouvent dans la documentation officielle de PHP et fournissent une interface commune pour effectuer des calculs de haute précision.

Conclusion

Définir le type entier de PHP sur un type entier long peut résoudre le problème des calculs de grands nombres et des calculs d'entiers dépassant 32 bits. Bien que cela puisse ralentir les calculs, cela est nécessaire si vous devez traiter de grands nombres. Définir le type entier long de PHP est très simple. Définissez simplement la précision de la virgule flottante sur -1 dans le fichier php.ini. Mais sachez que tous les calculs d'entiers seront effectués dans des types d'entiers longs et que vous devrez utiliser les fonctions GMP pour effectuer des calculs sur un grand nombre.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal