Я пытаюсь использовать жестко запрограммированное 64-битное целое число в строковой переменной.
Упрощенно Я хочу сделать что-то вроде этого:
$i = 76561197961384956;
$s = "i = $i";
Что должно привести к s
:
i = 76561197961384956
Это, очевидно, не работает, так как PHP приводит большие числа к плавающим, поэтому s
это:
i = 7.65611979614E+16
Хотя некоторые другие методы, такие как приведение и т. Д. Не работают, я нашел number_format()
и использую его так:
$s = "i = " . number_format($i, 0, '.', '');
Но в результате s
будет:
i = 76561197961384960
похоже на проблему аппроксимации, но как это исправить?