PHP 数学精度,通常用于计算数字,保留位数

安装

Linux 编译时配置了 --enable-bcmath 时可用。

PHP 的 Windows 版本已内建对此扩展的支持。不需要载入额外的扩展来使用这些函数。

php数学精度

通常我们的计算,有如下几个常用的计算

  • bccomp 比较任意精度的数值
  • bcadd 加法
  • bcsub 减法
  • bcmul 乘法
  • bcdiv 除法
  • bcmod 取模
  • bcpow 任意精度数字的乘方
  • bcsqrt 任意精度数字的二次方根

bccomp — 比较两个任意精度的数字

bccomp ( string $left_operand , string $right_operand [, int $scale = int ] ) : int
  • 参数1,表示要运算的第一个数值
  • 参数2,表示要运算的第二个数值
  • 参数3,可选的scale参数被用作设置指示数字, 在使用来作比较的小数点部分

返回
如果两个数相等返回0, 左边的数left_operand比较右边的数right_operand大返回1, 否则返回-1.

  • 相等=0
  • 第一个大于第二个=1
  • 第一个小于第二个=-1

bcadd — 2个任意精度数字的加法计算

bcadd ( string $left_operand , string $right_operand [, int $scale ] ) : string
  • 参数1,表示要运算的第一个数值
  • 参数2,表示要运算的第二个数值
  • 参数3,表示保留的小数点位数

返回运算后的字符串
2个操作数求和之后的结果以字符串返回

$a = '1.254';
$b = '5';

echo bcadd($a, $b);     // 6
echo '<br/>';
echo bcadd($a, $b, 4);  // 6.2540

echo '<br/>';
echo bcadd($a, $b, 2);  // 6.25

这里的精度,只会算你的位数小数点保留几位,并不会四舍五入

bcsub — 2个任意精度数字的减法

使用方法跟加法一样。

bcmul — 2个任意精度数字乘法计算

使用方法跟加法一样。

bcmod — 对一个任意精度数字取模

bcmod ( string $left_operand , string $modulus ) : string
  • 参数1:要被取模的数
  • 参数2:取模的数

返回 结果为字符串类型

bcsqrt — 任意精度数字的二次方根

  • 参数1:要被二次方根的值
  • 参数2:保留小数点数

返回 二次方根的结果为字符串类型,如果操作数是负数则返回null.

提示

评论区 (0)

没有记录
支持 markdown,图片截图粘贴拖拽都可以自动上传。
黑白课堂

黑白课堂

混元大罗金仙 站长创业者玉树凌风每天醒来0收入

查看更多

最新视频课程

Laravel 的 PhpSpreadsheet 包入门

ace.js 打造一款属于你的 Web 编辑器,入门文档。

wap2App 入门讲解,100%速成,全面为你讲解。

Laravel Permission 中文文档

解释 OAuth 2.0 认证 和使用场景说明

Laravel 之 horizon 队列管理界面系统

钻级赞助商