PHP高精准度BC程序库实例介绍

原创
小哥 3年前 (2022-11-05) 阅读数 42 #大杂烩

*php BC高精确度函数库

*php bc math 包含了:相加,比较,相除,相减,求余,相乘,n次方,配置默认小数点数目,求平方

*这些函数在涉及到有关金钱的计算时比较有用


*两个高精度数比较

*工作中遇到一种情况,0.00 != 0

*int bccomp ( string $left_operand , string $right_operand [, int $scale ] )

*$left=$right 返回 0

*$left

*$left>$right 返回 1

*$scale 小数点位数

***/

$a = 4.45;

$b = 5.54;

if(bccomp($a, $b, 2) == 0)

{

}

/***

*两个高精度数相加

*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 bcdiv ( string $left_operand , string $right_operand [, int $scale ] )

*$scale小数点位数默认为 0

***/

$a = 6;

$b = 5;

$c = bcdiv($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();

?>

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

热门