13桁の計算を行います。

【通常】
1000000000000 + 1 → 1E+12

【number_formatを使う】
number_format(1000000000000 + 1,0,'.',''); → 1000000000001

この「1000000000001」という結果を得たいがために「number_format」を使います。
何か問題があるでしょうか。

ちなみに、PHPのバージョンは4.x.xで、「bcmath.scale」は無指定です。

A 回答 (2件)

<?php


echo bcadd( "100000000000000", "11" );
?>

100000000000011


> 何か問題があるでしょうか。

64bitなら整数計算の結果は得られるでしょうが、32bitでは計算不能なので、はっきり32bitでは動かさないとか条件を特定できないなら任意精度の関数使った方が良いと思います。
    • good
    • 0

文字列で処理するってことですよね?


精度の問題がないとはいえないですが
sprintf的な処理でいいんじゃないですか?

print sprintf("%.0f",1000000000000 + 1);
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報