回答編集履歴
1
対策法(使える環境はは不明)
answer
CHANGED
@@ -2,4 +2,6 @@
|
|
2
2
|
|
3
3
|
> **警告** 大きな数値で base_convert() を使用すると、 精度が失われてしまうことがあります。これは、内部で使用している "double" や "float" の性質によるものです。詳細な情報や制限については マニュアルの浮動小数点数 のセクションを参照ください。
|
4
4
|
|
5
|
-
ということで、`base_convert`は53ビット(IEEE doubleの仮数部)しか精度がありません。
|
5
|
+
ということで、`base_convert`は53ビット(IEEE doubleの仮数部)しか精度がありません。
|
6
|
+
|
7
|
+
(用意されていれば)GMPはメモリのある限りの桁を扱えますので、[gmp_init](http://php.net/manual/ja/function.gmp-init.php)で16進数表現をGMPに変換して、[gmp_strval](http://php.net/manual/ja/function.gmp-strval.php)で36進数として出力させる、ということができます。
|