/**
* 对价格进行向上或向下取整
* @param $price 价格
* @param $decimal 保留小数位数
* @param $type 1:向上 2:向下
* @return string|null
*/
public function floatPrice($price, $decimal = 2, $type = 1)
{
$tmpPrice = explode('.', $price);
$dcmnum = $tmpPrice[1] ?? 0;
$subnum = 0;
if ($dcmnum > 0) {
$subnum = bcsub(strlen($dcmnum), $decimal, 10);
}
$powint = bcpow(10, $decimal);
$tmpPrice = bcmul($price, $powint, $subnum);
$tmpPriceArr = explode('.', $tmpPrice);
$tmpPrice = $tmpPriceArr[0];
$dcm = $tmpPriceArr[1] ?? 0;
if ($dcm > 0) {
if ($type == 1 && $tmpPrice > 0) {
$tmpPrice = $tmpPrice + 1;
} elseif ($type == 2 && $tmpPrice < 0) {
$tmpPrice = $tmpPrice - 1;
}
}
return bcdiv($tmpPrice, $powint, $decimal);
}
对价格进行向上或向下取整
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 观其大纲 page 01 基础知识 1 MySQL数据库概要 2 简单MySQL环境 3 数据的存储和获取 4 M...
- number++和 ++number 的区别 单独使用number++和++number,都是让自变量自增加一,如...
- 以下为本人当年初学MySQL时做的笔记,也从那时起没再更新过,但还是囊括了基本的知识点,有时还翻出来查查。是不是干...