¿Cuál es el valor máximo para un int en PHP?

Resuelto nickf asked hace 54 años • 8 respuestas

Haciendo caso omiso de las bibliotecas especiales que le permiten trabajar con números muy grandes, ¿cuál es el valor int más grande que puede almacenar en PHP?

nickf avatar Jan 01 '70 08:01 nickf
Aceptado

Del manual de PHP :

El tamaño de un número entero depende de la plataforma, aunque el valor habitual es un valor máximo de aproximadamente dos mil millones (es decir, 32 bits con signo). PHP no soporta números enteros sin signo. El tamaño entero se puede determinar usando la constante PHP_INT_SIZE y el valor máximo usando la constante PHP_INT_MAX desde PHP 4.4.0 y PHP 5.0.5.

Las plataformas de 64 bits suelen tener un valor máximo de aproximadamente 9E18, excepto en Windows anteriores a PHP 7, donde siempre era de 32 bits.

karim79 avatar Mar 22 '2009 07:03 karim79

Construcciones de PHP de 32 bits:

  • Los números enteros pueden ser de -2.147.483.648 a 2.147.483.647 (~ ± 2 mil millones)

Construcciones de PHP de 64 bits:

  • Los números enteros pueden ser de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 (~ ± 9 quintillones)

Los números son inclusivos.

Nota: algunas compilaciones de 64 bits alguna vez usaron enteros de 32 bits, particularmente compilaciones antiguas de PHP para Windows.

Los valores fuera de estos rangos se representan mediante valores de punto flotante, al igual que los valores no enteros dentro de estos rangos. El intérprete determinará automáticamente cuándo debe ocurrir este cambio a punto flotante en función de si el valor del resultado de un cálculo no se puede representar como un número entero.

PHP no admite enteros "sin signo" como tales, lo que limita el valor máximo de todos los enteros al rango de un entero "con signo".

thomasrutter avatar May 16 '2010 04:05 thomasrutter

El tamaño de las entradas PHP depende de la plataforma :

El tamaño de un número entero depende de la plataforma, aunque el valor habitual es un valor máximo de aproximadamente dos mil millones (es decir, 32 bits con signo). PHP no soporta números enteros sin signo. El tamaño entero se puede determinar usando la constante PHP_INT_SIZE y el valor máximo usando la constante PHP_INT_MAX desde PHP 4.4.0 y PHP 5.0.5.

PHP 6 agrega "longs" (entradas de 64 bits).

cletus avatar Mar 22 '2009 07:03 cletus

(un poco tarde, pero podría ser útil)

Confíe únicamente en PHP_INT_MAX y PHP_INT_SIZE , este valor varía según su arco (32/64 bits) y su sistema operativo...

Cualquier otra "suposición" o "pista" puede ser falsa.

Julien CROUZET avatar Dec 28 '2010 17:12 Julien CROUZET