php 除不尽怎么办

php除不尽的解决办法:1、通过round函数对浮点数进行四舍五入;2、通过ceil方法实现进一法取整;3、通过floor函数实现舍去法取整即可。

本文操作环境:Windows7系统、PHP7.1、Dell G3电脑。

php 除法取整

如果我们使用" / "操作符进行除法运算时,如果遇到无法除尽的情况,会得到小数值。如果我只希望得到整数部分,怎么办呢?

1.round — 对浮点数进行四舍五入

float round ( float $val [, int $precision ] )

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

//Example #1 round() 例子
<?php
echo round(3.4); // 3
echo round(3.5); // 4
echo round(3.6); // 4
echo round(3.6, 0); // 4
echo round(1.95583, 2); // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2); // 5.05
echo round(5.055, 2); // 5.06
?>

Note: PHP 默认不能正确处理类似 "12,300.2" 的字符串。见字符串转换为数值。

推荐:《PHP视频教程》

2.ceil — 进一法取整(向上取整)

float ceil ( float $value )

返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是float,因为float 值的范围通常比integer 要大。

//Example #1 ceil() 例子
<?php
echo ceil(4.3); // 5
echo ceil(9.999); // 10
?>

3.floor — 舍去法取整(向下取整)

float floor ( float $value )

返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是float,因为float 值的范围通常比integer 要大。

//Example #1 floor() 例子
<?php
echo floor(4.3); // 4
echo floor(9.999); // 9
?>

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » php 除不尽怎么办