PHP保留两位小数多余位数进一处理

应用场景

比如在做订单金额计算时,可能会出现类似 123.011 这种数据,小数超过3位,也就是单位超过分,那么就将多余的位数+1,并保留2位小数,也就是 123.02,区别于四舍五入。

加1进位处理

代码如下

//金额处理
function amount_calc($num){
	$arr = explode('.', $num);
	
	if( substr($arr[1], 2) > 0 ){
		
		$arr[1] = substr($arr[1], 0, 2) + 1;
		
		if( strlen($arr[1]) == 1 ){
			$arr[1] = '0'.$arr[1]; //前边补位0
		}
		
		if( $arr[1] == 100 ){
			$arr[0] += 1;
			$arr[1] = '00';
		}
		
	}
	
	return implode('.', $arr);
}