‘壹’ php使用哪个函数实现向上取整,哪个函数实现向下取整
向上取整,有小数就加1:ceil();
向下取整:floor()。
‘贰’ php如何保留小数点后2位并且取整
/*
*$num要处理的浮点数
*$digits保留的小数位数
*实现思路:先乘以10的小数位数次方,用floor向下取整,再除以除数得到舍去后面位数的结果
*最后再用sprintf配合位数再取一次值(此处是为了解决有些数字,最后一位为零时不显示问题)
*/
functionfloorFloat($num,$digits){
$num=floatval($num);
$multiple=pow(10,$digits);
$tempNum=floor($num*$multiple);
returnsprintf('%.'.$digits.'f',$tempNum/$multiple);
}
‘叁’ PHP取整数函数常用的四种方法小结
ceil
—
进一法取整
说明
float
ceil
(
float
value
)
返回不小于
value
的下一个整数,value
如果有小数部分则进一位。ceil()
返回的类型仍然是
float,因为
float
值的范围通常比
integer
要大。
例子
1.
ceil()
例子
复制代码
代码如下:
<?php
echo
ceil(4.3);
//
5
echo
ceil(9.999);
//
10
?>
floor
—
舍去法取整
说明
float
floor
(
float
value
)
返回不大于
value
的下一个整数,将
value
的小数部分舍去取整。floor()
返回的类型仍然是
float,因为
float
值的范围通常比
integer
要大。
例子
1.
floor()
例子
复制代码
代码如下:
<?php
echo
floor(4.3);
//
4
echo
floor(9.999);
//
9
?>
round
—
对浮点数进行四舍五入
说明
float
round
(
float
val
[,
int
precision]
)
返回将
val
根据指定精度
precision(十进制小数点后数字的数目)进行四舍五入的结果。precision
也可以是负数或零(默认值)。
例子
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
?>
intval—对变数转成整数型态
例子intval()
复制代码
代码如下:
<?php
echo
intval(4.3);
//4
echo
intval(4.6);
//
4
?>
‘肆’ php取整的几种方式
有三种方式,分别是floor()(舍去小数部分,只取整数),ceil()(进一取整,只要有小数部分,直接加一),round()(四舍五入取整)。。。
‘伍’ PHP 怎么用parseInt
parseInt是javascript中的函数,用于将指定进制的数字字符串转换为十进制数字,第一个参数为待转换的字符串,第二个参数为字符串的进制数,默认为10。
在php中如果要将字符串转为数字,可以用intval函数:
intintval(mixed$var[,int$base=10])
通过使用指定的进制 base 转换(默认是十进制),返回变量 var的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1。
var变量为要转换成 integer 的数量值
base变量可选,默认为10,为转化所使用的进制
如果 base 是 0,通过检测 var 的格式来决定使用的进制:
如果字符串包括了 "0x" (或 "0X") 的前缀,使用 16 进制 (hex);否则,
如果字符串以 "0" 开始,使用 8 进制(octal)
否则,将使用 10 进制 (decimal)。
成功时返回 var 的 integer 值,失败时返回 0。空的 array 返回 0,非空的 array 返回 1。
用法基本与JavaScript中的parseInt一致。
‘陆’ php中浮点型怎样转化成整型
浮点转换成整型有三种函数
1、floor ( float value) 舍去法取整又称向下取整,将小数部分舍去取整
<?php
echofloor(6.1);//结果是6
echofloor(6.9);//结果是6
?>
2、ceil进一法取整,有小数部分则进一位
<?php
echoceil(6.1);//结果是7
echoceil(6.9);//结果是7
?>
3、round 浮点数进行四舍五入
<?php
echoround(6.1);//结果是6
echoround(6.9);//结果是7
?>