manual-php
Version:
129 lines (84 loc) • 2.75 kB
Markdown
# 任意精度数学
* [bcadd - 两个任意精度数字的加法计算](#bcadd)
* [bccomp - 比较两个任意精度的数字](#bccomp)
* [bcdiv - 两个任意精度的数字除法计算](#bcdiv)
* [bcmod - 对一个任意精度数字取模](#bcmod)
* [bcmul - 两个任意精度数字乘法计算](#bcmul)
* [bcpow - 任意精度数字的乘方](#bcpow)
* [bcpowmod - 将任意精度数先进行乘方运算,然后进行取模运算](#bcpowmod)
* [bcscale - 设置所有任意精度数学函数的默认小数点保留位数](#bcscale)
* [bcsqrt - 任意精度数字的平方根](#bcsqrt)
* [bcsub - 两个任意精度数字的减法](#bcsub)
## bcadd
```php
var_dump(bcadd('1.234', '5')); // string(1) "6"
var_dump(bcadd('1.234', '5', 4)); // string(6) "6.2340"
var_dump(bcadd('1.234', '-5', 4)); // string(7) "-3.7660"
```
## bccomp
```php
var_dump(bccomp('1', '2')); // int(-1)
var_dump(bccomp('1.00001', '1', 3)); // int(0)
var_dump(bccomp('1.00001', '1', 5)); // int(1)
```
## bcdiv
```php
var_dump(bcdiv('105', '6.55957')); // string(2) "16"
var_dump(bcdiv('105', '6.55957', 3)); // string(6) "16.007"
var_dump(bcdiv('105', '6.55957', 7)); // string(10) "16.0071468"
```
## bcmod
```php
var_dump(bcmod('5', '2')); // string(1) "1"
var_dump(bcmod('5.7', '1.3')); // string(1) "0"
var_dump(bcmod('5.7', '1.3', 2)); // string(4) "0.50"
```
## bcmul
```php
var_dump(bcmul('2', '4')); // string(1) "8"
var_dump(bcmul('1.34747474747', '35')); // string(2) "47"
var_dump(bcmul('1.34747474747', '35', 3)); // string(6) "47.161"
```
## bcpow
```php
var_dump(bcpow('0', '0')); // string(1) "1"
var_dump(bcpow('4.2', '3', 2)); // string(5) "74.08"
var_dump(bcpow('5', '2', 2)); // string(5) "25.00"
```
## bcpowmod
```php
var_dump(bcpowmod('0', '0', '4')); // string(1) "1"
var_dump(bcpowmod('5', '2', '2', 2)); // string(4) "1.00"
var_dump(bcpowmod('5', '2', '5', 2)); // string(4) "0.00"
```
## bcscale
```php
var_dump(bcscale(4)); // int(0)
var_dump(bcadd('1.234', '-5')); // string(7) "-3.7660"
var_dump(bcscale(3)); // int(4)
var_dump(bcdiv('105', '6.55957')); // string(6) "16.007"
var_dump(bcscale(3)); // int(3)
var_dump(bcmul('1.34747474747', '35')); // string(6) "47.161"
```
## bcsqrt
```php
var_dump(bcsqrt('2')); // string(1) "1"
var_dump(bcsqrt('2', 3)); // string(5) "1.414"
var_dump(bcsqrt('4')); // string(1) "2"
```
## bcsub
```php
var_dump(bcsub('1.234', '5')); // string(2) "-3"
var_dump(bcsub('1.234', '5', 4)); // string(7) "-3.7660"
var_dump(bcsub('1.234', '-5', 4)); // string(6) "6.2340"
```