Ho cercato per un po 'di tempo, ma quello che riesco a trovare non è quello che cerco. Devo convertire un valore intero, che può essere molto grande, in una stringa. Sembra facile: "$var"
? No, perché questo può portare alla rappresentazione del numero E+
.Convertire un intero grande in una stringa intera in 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
come posso fare l'output sia 10000000000000000000000000
invece?
Si prega di notare che il vostro "molto grande integer" non è rappresentato nel computer come un intero, come si supera entrambi i limiti a 32bit e 64bit. – thetaiko
$ var = '10000000000000000000000000'; –
Non è possibile farlo con un valore int nativo. Dovrà essere memorizzato come una stringa. Se stai facendo operazioni matematiche su questo numero, dovrai usare la libreria [bcmath] (http://php.net/bcmath). –