引言:一定要確保數據的准確性。這是一個好的程序員的基本素養。
<?php
/**
* 精確加法
* @param [type] $a [description]
* @param [type] $b [description]
*/
function math_add($a,$b,$scale = '2') {
return bcadd($a,$b,$scale);
}
/**
* 精確減法
* @param [type] $a [description]
* @param [type] $b [description]
*/
function math_sub($a,$b,$scale = '2') {
return bcsub($a,$b,$scale);
}
/**
* 精確乘法
* @param [type] $a [description]
* @param [type] $b [description]
*/
function math_mul($a,$b,$scale = '2') {
return bcmul($a,$b,$scale);
}
/**
* 精確除法
* @param [type] $a [description]
* @param [type] $b [description]
*/
function math_div($a,$b,$scale = '2') {
return bcdiv($a,$b,$scale);
}
/**
* 精確求余/取模
* @param [type] $a [description]
* @param [type] $b [description]
*/
function math_mod($a,$b) {
return bcmod($a,$b);
}
/**
* 比較大小
* @param [type] $a [description]
* @param [type] $b [description]
* 大於 返回 1 等於返回 0 小於返回 -1
*/
function math_comp($a,$b,$scale = '5') {
return bccomp($a,$b,$scale); // 比較到小數點位數
}
echo math_add('3.445','3.444')."\n"; // 加 6.88
echo math_sub('3.445','3.444')."\n"; // 減 0.00
echo math_mul('3.445','3.444')."\n"; // 乘 11.86
echo math_div('3.445','3.444')."\n"; // 除 1.00
echo math_mod('3.445','3.444')."\n"; // 取模 0
echo math_comp('3.445','3.444')."\n";// 比較 1
echo math_add('3.445','3.444','3')."\n"; // 加 6.889
echo math_sub('3.445','3.444','3')."\n"; // 減 0.001
echo math_mul('3.445','3.444','3')."\n"; // 乘 11.864
echo math_div('3.445','3.444','3')."\n"; // 除 1.000
echo math_mod('3.445','3.444')."\n"; // 取模 0
echo math_comp('3.445','3.444')."\n";// 比較 1
?>
