PHP で BCMATH を使用して税額または割引額を計算しようとしています。小数点以下 2 桁が必要です。これが私がやっている方法です:
bcscale(2);
$price = '60.67';
$discount = bcmul(bcdiv($price, 100), '3.8'); // calculate 3.8 percent from 60.67
// result is: 2.28
// result should be: 2.31
単純にスケールを 4 などに増やすだけで、正しい結果が得られます。
質問は次のとおりです。これを正しく行うにはどうすればよいですか? スケールを 4 に設定し、最後に sprintf('%0.2f', $discount) を設定する必要がありますか? または、これを行うより良い方法はありますか?