PHP算術及精度計算

2021-08-21 22:34:16 字數 876 閱讀 8622

一、高精度算術運算子

bcadd 將兩個高精度數字相加

bccomp 比較兩個高精度數字,返回-1, 0, 1

bcdiv 將兩個高精度數字相除

bcmod 求高精度數字餘數

bcmul 將兩個高精度數字相乘

bcpow 求高精度數字乘方

bcpowmod 求高精度數字乘方求模,數論裡非常常用

bcscale 配置預設小數點位數,相當於就是linux bc中的」scale=」

bcsqrt 求高精度數字平方根

bcsub 將兩個高精度數字相減

案例:

/** * 兩個高精度數比較

* * @access global

* @param float $left

* @param float $right

* @param

int$scale 精確到的小數點位數

* * @return

int$left==$right 返回 0 | $left

<$right 返回 -1 | $left>$right 返回 1

*/var_dump(bccomp($left=4.45, $right=5.54, 2));

二、常規算術運算子
-$a 	取反 	$a 的負值。

$a + $b 加法 $a 和 $b 的和。

$a - $b 減法 $a 和 $b 的差。

$a * $b 乘法 $a 和 $b 的積。

$a / $b 除法 $a 除以 $b 的商。

$a % $b 取模 $a 除以 $b 的餘數。

參考:php算術及精度計算

php精度計算

預設保留兩位小數 bcadd 引數1,引數2,引數3 引數1 和2 是要相加的引數 3是保留幾位小數。bcadd任意精度數的相加 bcsub任意精度數的減法 bcmul乘法,bcdiv除法 bcmod取餘數。比 功能更強大 bcpow冪函式運算 bcsqrt平方根 sqrt平方根運算 pow求冪 a...

php高精度數計算

一 前方有坑 php在使用加減乘除等運算子計算浮點數的時候,經常會出現意想不到的結果,特別是關於財務資料方面的計算,給不少工程師惹了很多的麻煩。比如今天工作終於到的乙個案例 a 2586 b 2585.98 var dump a a a b 期望的結果是 float 0.02 實際結果 float ...

php高精度數值計算

bcadd 將兩個高精度數字相加 bccomp 比較兩個高精度數字,返回 1,0,1 bcdiv 將兩個高精度數字相除 bcmod 求高精度數字餘數 bcmul 將兩個高精度數字相乘 bcpow 求高精度數字乘方 bcpowmod 求高精度數字乘方求模,數論裡非常常用 bcscale 配置預設小數點...