I have a unusual problem which I have no idea how to solve.
I have a JSON file, where a application id is stored, namely the following:
"app_id": "363924477024846"
I read my JSON file from the HDD and parse it with json_decode() to use it in my application. However, at one point, I want to have the app-id sent to the browser. The problem is, if I echo that variable out, its printed as following:
2.7110712626725E+14
Is there any way to prevent this? I don't need it to be threated as a number by PHP since I am not doing any calculations with it - a string would be fine. But since its represented by numbers only, it seems that json_decode() threats it as a number, even tough I put quotes around it (which should indicate a string) or maybe PHP just does stupid type hinting in this case, I don't know...
Any ideas on how to handle that?
I had the same problem here: Simply use phps number_format function, which solves this issue:
$number = "363924477024846";
echo number_format($number, 0, '', '');
// 363924477024846
It looks like json_decode has an option to treat big integers as strings.
json_decode($json, false, 512, JSON_BIGINT_AS_STRING)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With