問題タブ [bcmath]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3289 参照

php - PHPは割引または税金を計算します

PHP で BCMATH を使用して税額または割引額を計算しようとしています。小数点以下 2 桁が必要です。これが私がやっている方法です:

単純にスケールを 4 などに増やすだけで、正しい結果が得られます。

質問は次のとおりです。これを正しく行うにはどうすればよいですか? スケールを 4 に設定し、最後に sprintf('%0.2f', $discount) を設定する必要がありますか? または、これを行うより良い方法はありますか?

0 投票する
1 に答える
47 参照

php - bcdiv 最小左/右オペランド

echo bcdiv(0.0001, 86400, 30);

このコードはエコーします: 0.000000001157407407407407407407

echo bcdiv(0.00001, 86400, 30);

そして、このコードはエコーします: 0.00000000000000000000000000000

何故ですか?両方のオペランドに最小値はありますか? 0.00000001 を 86400 で割りたいのですが、可能ですか?

bcdiv のドキュメントは次のとおりです: http://us2.php.net/manual/en/function.bcdiv.php

0 投票する
1 に答える
1285 参照

php - Bcmul レポート 0

以下のような簡単なコードがあります。

これは、4.47274449 であるはずのときに 0.00000000 を出力します。レートを 0.0001 に変更すると、小数点以下 4 桁を超える正しい数値が出力され、0 が報告されます。

私は何か間違ったことをしていますか、それとも既知の制限か何かですか? だとするとかなり大きいようです。

0 投票する
2 に答える
1898 参照

php - bcdiv が常に 0 を返すのはなぜですか?

bcdivBC Maths 関数がゼロ以外の結果に対して常にゼロを返すBIG 数値に小さな問題があります。

例えば ​​:

対従来の方法:

なぜ不一致なのかはわかりません。BC 数学関数は文字列でのみ機能しますか? もしそうなら、どのように int 値を事前に文字列に変換できますか(int)$myvar;?

0 投票する
2 に答える
248 参照

php - 小数点以下をランダムに追加する Bcmath

bcmath 関数を使用する Web から取得した PHP 関数があります。

有効な入力に対して、関数はランダムに「.0000000000」を出力に追加します。

元:

これは、php-fpm を実行する 2 つの異なる nginx サーバーでテストされました。ここで何が間違っているのかを理解するのを手伝ってください。ありがとう

0 投票する
1 に答える
1598 参照

php - 小数点以下が約 1、2、または 3 の値に BCMath を使用する必要がありますか?

私のデータベースには、符号付きと符号なしの両方で、小数点以下 1、2、または 3 桁の精度を持つ約 10 ~ 15 の数値があります。

使用されているデータ型の例:

私はPHPでそれらを次のように計算しています:

round()次に、次のような関数を使用しています。

の結果は$result_round最大になります: 100.000,999

私はこれをチェックしています: bcmath PHP ライブラリの精度はどれくらいですか? 答えは、round()、printfなどの関数を使用していなければ問題にならないと述べています.

BCMath-extension を使用する必要がありますか? (私が使用しているという理由だけでround()