PHP round() 函数


定义和用法

round() 函数可用于将任何浮点数舍入到所需的精度级别。正精度参数导致数字在小数点后舍入,而负精度参数则在小数点前舍入。默认精度为 0。

例如,round(10.6) 返回 11,round(10.2) 返回 10。该函数始终返回浮点数。

此函数还有一个可选参数,称为 mode,它采用稍后描述的重新定义常量之一。

语法

round ( float $value , int $precision , int $mode ) : float

参数

序号参数及描述
1
要舍入的浮点数
2精度
要舍入到的十进制位数。默认为 0。正精度在小数点后舍入给定数字。负精度在小数点前舍入给定数字。
3模式
以下预定义常量之一
PHP_ROUND_HALF_UP当数字是中间值时,将其舍入到远离 0 的方向。因此,1.5 变为 2,-1.5 变为 -2
PHP_ROUND_HALF_DOWN

当数字是中间值时,将其舍入到接近 0 的方向。因此,1.5 变为 1,-1.5 变为 -1
PHP_ROUND_HALF_EVEN将数字舍入到最接近的偶数值
PHP_ROUND_HALF_ODD将数字舍入到最接近的奇数值

返回值

PHP round() 函数返回一个浮点数,通过将值舍入到所需的精度来获得。

PHP 版本

此函数可在 PHP 4.x、PHP 5.x 和 PHP 7.x 版本中使用。

示例

 在线演示

以下示例将给定数字舍入到正精度值:

<?php
   $arg=1234.567;
   echo "round(" . $arg . ") = " . round($arg) . "
";    echo "round(" . $arg . ",1) = " . round($arg,1) . "
";    echo "round(" . $arg . ",2) = " . round($arg,2) . "
"; ?>

输出

这将产生以下结果:

round(1234.567) = 1235
round(1234.567,1) = 1234.6
round(1234.567,2) = 1234.57

示例

 在线演示

以下示例将数字舍入到负精度值:

<?php
   $arg=1234.567;
   echo "round(" . $arg . ") = " . round($arg) . "
";    echo "round(" . $arg . ",-1) = " . round($arg,-1) . "
";    echo "round(" . $arg . ",-2) = " . round($arg,-2) . "
"; ?>

输出

这将产生以下结果:

round(1234.567) = 1235
round(1234.567,-1) = 1230
round(1234.567,-2) = 1200

示例

 在线演示

以下示例使用 UP 和 DOWN 模式常量进行舍入:

<?php
echo "round( 3.45,HALF_UP) = " . round(3.45,0, PHP_ROUND_HALF_UP) . "
"; echo "round(3.75 HALF_UP) = " . round(3.75, 1, PHP_ROUND_HALF_DOWN) . "
"; ?>

输出

这将产生以下结果:

round( 3.45,HALF_UP) = 3
round(3.75 HALF_UP) = 3.7

示例

 在线演示

以下示例使用 ODD 和 EVEN 模式进行舍入

<?php
   echo "round( 3.45,HALF_ODD) = " . round(3.45,0, PHP_ROUND_HALF_ODD) . "
";    echo "round(3.78 HALF_EVEN) = " . round(3.78, 0, PHP_ROUND_HALF_EVEN) . "
"; ?>

输出

这将产生以下结果:

round( 3.45,HALF_ODD) = 3
round(3.78, HALF_EVEN) = 4

更新于:2020年6月30日

837 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.