Except that with xpheas method, you lose all the benefits of arbitrary precision as the * operator only works on int and float and those are restricted in length (See int ant float types for more information).
bcmul
(PHP 4, PHP 5)
bcmul — 2つの任意精度数値の乗算を行う
説明
string bcmul
( string $left_operand
, string $right_operand
[, int $scale
] )
left_operand に right_operand を掛けます。
パラメータ
- left_operand
-
左オペランドを表す文字列。
- right_operand
-
右オペランドを表す文字列。
- scale
-
このオプションパラメータを使用して、 結果の小数点以下の桁数を指定します。すべての関数で使用するデフォルトのスケールを定義するには bcscale() を使用します。
返り値
結果を文字列で返します。
例
例1 bcmul() の例
<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>
bcmul
ju(...)
02-Apr-2008 01:00
02-Apr-2008 01:00
xpheas (at) gmail . com
14-Jun-2007 08:13
14-Jun-2007 08:13
if you have compiled php width "--disable-bcmath", you can use this:
<?php
function bcmul($_ro, $_lo, $_scale=0)
{
return round($_ro*$_lo, $_scale);
}
?>
