本文主要介紹了PHP常見數學函數及BC高精度數學函數用法,簡單列舉了php常見數學運算函數並結合執行個體形式給出了bc高精度函數的功能與提示,需要的朋友可以參考下,希望能協助到大家。
本文執行個體講述了PHP常見數學函數及BC高精度數學函數用法。分享給大家供大家參考,具體如下:
1. bcadd 任意精度數的相加
2. bcsub 任意精度數的減法
3. bcmul 乘法, bcp除法
4. bcmod 取餘數。 (比%功能更強大)
5. bcpow 冪函數運算
6. bcsqrt 平方根
7. sqrt 平方根運算
7. pow求冪
8. abs 求絕對值
9. pi 得到圓周率數值
三角函數
sin cos tan asin acos atan(用弧度表達)
deg2rad 角度轉換成弧度
rad2deg 弧度轉換成角度
指數
log 求自然對數, log10 求10位底的對數
exp 以e為底的冪
各種數制轉換
base_convert 通用的任意數制轉換
bindec 二進位轉換成十進位
decbin 十進位轉換成二進位
dechex 十進位轉換成十六進位
decoct 十進位轉換成八進位
hexdec 十六進位轉換成十進位
octdec 八進位轉換成十進位
BC高精確度函數用法樣本:
<?php /*************************************************************************************** *php BC高精確度函數庫 *php bc math 包含了:相加,比較,相除,相減,求餘,相乘,n次方,配置預設小數點數目,求平方 *這些函數在涉及到有關金錢的計算時比較有用 *************************************************************************************** *兩個高精度數比較 *工作中遇到一種情況,0.00 != 0 *int bccomp ( string $left_operand , string $right_operand [, int $scale ] ) *$left=$right 返回 0 *$left<$right 返回 -1 *$left>$right 返回 1 *$scale 小數點位元 ***************************************************************************************/$a = 4.45;$b = 5.54;if(bccomp($a, $b, 2) == 0){ echo "完全相等";}/*************************************************************************************** *兩個高精度數相加 *string bcadd ( string $left_operand , string $right_operand [, int $scale ] ) *$scale 返回的小數點個數 ***************************************************************************************/$a = 1.0321456;$b = 0.0123456;$c = bcadd($a, $b, 2);var_dump($c);/*************************************************************************************** *兩個高精度數相減 *sstring bcsub ( string $left_operand , string $right_operand [, int $scale ] ) *$scale 返回的小數點個數 ***************************************************************************************/$a = 1.0321456;$b = 3.0123456;$c = bcsub($a, $b, 2);var_dump($c);/******************************************************** *兩個高精度數求餘/模數 *string bcmod ( string $left_operand , string $modulus ) *******************************************************/$a = 6;$b = 4;$c = bcmod($a, $b);var_dump($c);/*************************************************************************************** *兩個高精度數相除 *string bcp ( string $left_operand , string $right_operand [, int $scale ] ) *$scale小數點位元預設為 0 ***************************************************************************************/ $a = 6; $b = 5; $c = bcp($a, $b, 3); var_dump($c);/*************************************************************************************** *兩個高精度數相乘 *string bcmul ( string $left_operand , string $right_operand [, int $scale ] ) *$scale小數點位元預設為 0 ***************************************************************************************/$a = 3.1415926;$b = 2.4569874566;$c = bcmul($a, $b, 6);var_dump($c);/*************************************************************************************** *兩個高精度數的次方值 *string bcpow ( string $left_operand , string $right_operand [, int $scale ] ) *$scale小數點位元預設為 0 ***************************************************************************************/$a = 3.1415926;$b = 2;$c = bcpow($a, $b, 3);var_dump($c);/************************************************** *求高精度數的平方根 *string bcsqrt ( string $operand [, int $scale ] ) *$scale小數點位元預設為 0 ***************************************************/$b = bcsqrt($a, 6);var_dump($b);/****************************** *設定bc函數的小數點位元 *bool bcscale ( int $scale ) *$scale小數點位元預設為 0 ******************************/bcscale(2);?>
運行結果:
string(4) "1.04"string(5) "-1.98"string(1) "2"string(5) "1.200"string(8) "7.718853"string(5) "9.869"string(8) "1.772453"
相關推薦:
php高精度數學函數庫函數匯總
簡單總結 MySQL數學函數
php數學函數擴充