Le contenu partagé avec vous dans cet article concerne les opérations sur les entiers longs en PHP. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer
<.>En PHP, il n'y a que deux types de nombres : int et float. Leur nombre de chiffres dépend du système, et il n'y a pas d'uint, il y a donc beaucoup d'inconvénients lors de la communication avec d'autres systèmes. Si int déborde, il sera automatiquement converti en float, exprimé en notation scientifique, et seuls 15 chiffres seront conservés après la virgule décimale. Les données suivantes seront arrondies, ce qui aura un impact sur les opérations de données ultérieures, . tels que Il y aura des erreurs en ce qui concerne la conversion de base, les opérations, etc..
Pour PHP : int : min~max : -9223372036854775808 ~ 9223372036854775807 (~92 milliards)
flottant : min~max : -1,7976931348623E+308 ~ 1,7976931348623E+308 (~1,8E308)
À ce stade, nous devons envisager d'utiliser la forme de chaîne pour le traitement associé. Si nous devons effectuer des calculs mathématiques, nous devons utiliser Fonctions BC Math (mathématiques à précision arbitraire), vous pouvez vérifier. faites-le vous-même dans le manuel PHP : http://php.net/manual/zh/function.bcmod.php
Voici un exemple simple de conversion d'un entier long en binaire, en convertissant 2 ^ 128 en binaire : Puisque la fonction de conversion de base de PHP a également une limite de valeur maximale, une division courte est utilisée ici pour convertir en binaire, utilisez la fonction d'origine pow pour exponentiation
Le résultat de sortie est le suivant. Évidemment, la précision n'est pas suffisante et le binaire est faux
Représentation correcte :
Résultats de sortie :
Recommandations associées :Données PDO associées dans les opérations de la couche d'abstraction PHP Access
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!