Показать больше цифр в PHP - PullRequest
3 голосов
/ 27 июня 2011

Допустим, у меня есть:

echo 1/3;

И это распечатывает только 0.33333333333333, могу ли я получить больше цифр?

Ответы [ 4 ]

6 голосов
/ 27 июня 2011

Можно использовать bcdiv

echo bcdiv(1, 3, 20);

Третий аргумент

используется для установки количества цифр после десятичного знака в результате. Вы также можете установить глобальный масштаб по умолчанию для всех функций, используя bcscale ().

3 голосов
/ 27 июня 2011

Отредактируйте переменную конфигурации precision либо в php.ini, либо в другом месте конфигурации, либо используйте ini_set().

ini_set('precision', 22);
echo 1/3;
// 0.3333333333333333148296

Даже еслиЯ очень сомневаюсь, что вам действительно нужна такая точность; -)

EDIT

Как сказал Гордон: вы достигнете предела точности с плавающей точкой в ​​PHP раньше илипозже (в зависимости от указанной точности).Поэтому лучше использовать расширение BCMath Arbitrary Precision или расширение GNU Multiple Precision , если выпосле настоящей высокоточной математики.

2 голосов
/ 27 июня 2011

Возможно, вы захотите заглянуть в библиотеку PHP произвольной точности BC http://php.net/manual/en/book.bc.php

1 голос
/ 27 июня 2011

Значение precision: http://es.php.net/manual/en/ini.core.php

Однако я бы не стал использовать его, кроме как в целях отладки. Посмотрите на number_format ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...