<?php
/**
* 数据计算工具类
* User: Eden
* Date: 19-4-26 上午9:23
*/
namespace Common\Util;
class MathUtil extends CommonUtil {
/**
* 处理精准度
* @param $a
* @param string $scale
* @return string
*/
public static function precise($a,$scale = '2') {
return number_format($a, $scale, '.', ''); // 四舍五入
//return bcsub($a,0,$scale); // 直接截取
}
/**
* 精确加法
* @param $a
* @param $b
* @param string $scale
* @return string
*/
public static function add($a,$b,$scale = '2') {
$new_scale = (int)$scale + 2;
$res = bcadd($a,$b,$new_scale);
return number_format($res, $scale, '.', '');
}
/**
* 精确减法
* @param $a
* @param $b
* @param string $scale
* @return string
*/
public static function sub($a,$b,$scale = '2') {
$new_scale = (int)$scale + 2;
$res = bcsub($a,$b,$new_scale);
return number_format($res, $scale, '.', '');
}
/**
* 精确乘法
* @param $a
* @param $b
* @param string $scale
* @return string
*/
public static function mul($a,$b,$scale = '2') {
$new_scale = (int)$scale + 2;
$res = bcmul($a,$b,$new_scale);
return number_format($res, $scale, '.', '');
}
/**
* 精确除法
* @param $a
* @param $b
* @param string $scale
* @return string
*/
public static function div($a,$b,$scale = '2') {
$new_scale = (int)$scale + 2;
$res = bcdiv($a,$b,$new_scale);
return number_format($res, $scale, '.', '');
}
}
精确计算升级版
原创
©著作权归作者所有:来自51CTO博客作者TBHacker的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:第一个WPF
下一篇:setTimeOut函数传参数
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
升级版的图片轮播
升级版的图片轮播
图片轮播 升级版 -
吃瓜群众升级版
题目描述 某地总共有 M 堆瓜,第 i 堆瓜的数量为 Xi。现有 N 组群众现在想要吃瓜,第 i 组群众想要吃的瓜的数量为 Yi。
c++ #include i++ 数据