您现在的位置是: 首页 >  PHP PHP

PHP高精度计算函数

冬寂 2021-12-22 10:05:57 【PHP】 4189人已围观

PHP 为任意精度数学计算提供了二进制计算器(Binary Calculator),它支持任意大小和精度的数字,以字符串形式描述

bcadd — 加法
bccomp — 比较
bcdiv — 相除
bcmod — 求余数
bcmul — 乘法
bcpow — 次方
bcpowmod — 先次方然后求余数
bcscale — 给所有函数设置小数位精度
bcsqrt — 求平方根
bcsub — 减法


bccomp

(PHP 4, PHP 5, PHP 7, PHP 8)

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

说明

bccomp(string $num1string $num2?int $scale = null): int

比较 num1 和 num2, 并且返回整型数字的结果。

参数 

  • num1

  • 左边的运算数,是一个字符串。

  • num2

  • 右边的运算数,是一个字符串。

  • scale

  • 可选的 scale 参数被用作设置指示数字, 在使用来作比较的小数点部分。

返回值 

两个数相等时返回 0; num1 比 num2 大时返回 1; 其他则返回 -1。

更新日志

版本说明
8.0.0现在 scale 可以为 null。

范例

示例 #1 bccomp() 示例

<?php

echo bccomp('1''2') . "\n";   // -1
echo bccomp('1.00001''1'3); // 0
echo bccomp('1.00001''1'5); // 1

?>


bcscale

(PHP 4, PHP 5, PHP 7, PHP 8)

bcscale — 设置/获取所有 bc math 函数的默认小数点保留位数

说明 ¶

bcscale(int $scale): int

设置所有 bc math 函数在未设定情况下的小数点保留位数。

bcscale(null $scale = null): int

获取当前的小数点保留位数。

参数 ¶

  • scale

  • 小数点保留位数。

返回值 ¶

设置的时候,返回之前的小数点保留位数。否则就是返回当前的位数。

更新日志 ¶

版本说明
8.0.0现在 scale 可以为 null。
7.3.0现在 bcscale() 不仅可以设置,还可以获取当前的小数点保留位数。 用于设置的时候,现在会返回之前的位数。 之前 scale 是强制的参数, 且 bcscale() 总是返回 true

范例 ¶

示例 #1 bcscale() 示例

<?php

// 默认小数点位数: 3
bcscale(3);
echo 
bcdiv('105''6.55957'); // 16.007

// 不调用 bcscale() 也一样
echo bcdiv('105''6.55957'3); // 16.007

?>





很赞哦! ( 24 )

站点信息

  • 建站时间:2020-08-10
  • 文章统计100篇文章
  • 标签管理标签云
  • 统计数据百度统计
  • 微信公众号:扫描二维码,关注我