您的位置:

php除法保留小数,小数除法保留整数

本文目录一览:

PHP 保留小数点后2位

两种取值法,看你需要什么结果:

1 四舍五入(简单,自带函数就可以解决)

$youWantNum = sprintf('%.2f', $num);

//有人说用floor,floor是取整的函数,无法直接取小数;但可以转换得到结果,那就是下面的例子

2 舍去后面的,不管是什么

/*

 *$num 要处理的浮点数

 *$digits 保留的小数位数

 * 实现思路:先乘以10的小数位数次方,用floor向下取整,再除以除数得到舍去后面位数的结果

 * 最后再用sprintf配合位数再取一次值(此处是为了解决有些数字,最后一位为零时不显示问题)

 */

function floorFloat($num, $digits) {

$num = floatval($num);

$multiple = pow(10, $digits);

$tempNum = floor($num*$multiple);

return sprintf('%.'.$digits.'f', $tempNum/$multiple);

}

用php使数字保留小数点后两位怎么做的?

PHP 中的 round() 函数可以实现

round() 函数对浮点数进行四舍五入。

round(x,prec)

参数说明

x 可选。规定要舍入的数字。

prec 可选。规定小数点后的位数。

返回将 x 根据指定精度 prec (十进制小数点后数字的数目)进行四舍五入的结果。prec 也可以是负数或零(默认值)。

注释:PHP 默认不能正确处理类似 "12,300.2" 的字符串。

例如:

?php

echo round(-4.635,2);

?

输出: -4.64

php如何保留一位小数,包括0,内详?

PHP变量保留一位小数,包括0;可以考虑使用sprintf函数,控制浮点数格式。示例如下:

?php

header("Content-type:text/html;charset=utf-8;");

$money=20;

$money=sprintf("%.1f",$money);

echo $money;

//20.0

$money2=20.20;

$money2=sprintf("%.1f",$money2);

echo $money2;

//20.2