He estado buscando por un tiempo, pero lo que puedo encontrar no es lo que busco. Necesito convertir un valor entero, que puede ser muy grande, en una cadena. Suena fácil: "$var"
? No, porque esto puede llevar a la representación del número E+
.Convertir un entero grande a una cadena completa en PHP
<?php
$var = 10000000000000000000000000;
echo $var."\n";
echo "'$var'\n";
echo (string) $var."\n";
echo strval($var);
?>
1.0E+25
'1.0E+25'
1.0E+25
1.0E+25
Cómo puedo hacer que la salida sea 10000000000000000000000000
en su lugar?
Tenga en cuenta que su "muy gran número entero" no está representado en su ordenador como un entero, ya que supera los dos límites de 32 bits y 64 bits. – thetaiko
$ var = '10000000000000000000000000'; –
No puede hacer esto con un valor int nativo. Tendrá que ser almacenado como una cadena. Si estás haciendo operaciones matemáticas en este número, tendrás que usar la biblioteca [bcmath] (http://php.net/bcmath). –