Как разобрать long значение в php? - PullRequest
3 голосов
/ 05 сентября 2011

Нужно что-то вроде intVal (), но для больших чисел, например: 100001416147426.

Есть ли такая функция в php?Не могу найти.

Ответы [ 3 ]

2 голосов
/ 05 сентября 2011

Вы должны использовать BC Math , он рассчитан на числа любого размера с PHP.

Расширения BC Math предлагает несколько математических функций , например:

  • bcadd Добавить два числа произвольной точности
  • bccomp - Сравнить два числа произвольной точности
  • bcsqrt Получить квадратный корень из числа произвольной точности
  • ...

На сайте документации PHP есть пример небольшого кода от Charles для округления длинного числа!

1 голос
/ 03 июля 2012

стандарт кодирования в прошлом (так как C) должен был следовать за числом с L / l $ x = 100001416147426L;

Этот сигнал является синтаксическим анализатором для выделения 64 битов для считывания числа изскрипт для компиляции.

Но если вы не используете php x64, это будет бесполезно.В противном случае вам придется создать его из компонента big_number.Однажды в среде x64 intval автоматически расширится до long при превышении 32-битного int.

1 голос
/ 05 сентября 2011

считают

$x = (double) "100001416147426";
var_dump($x);

выход:

float(1.0000141614743E+14)
...