PHP中round()函数对浮点数进行四舍五入的方法


Posted in PHP onNovember 19, 2014

本文实例讲述了PHP中round()函数对浮点数进行四舍五入的方法。分享给大家供大家参考。具体方法如下:

语法:round(x,prec)

参数 描述
x 可选,规定要舍入的数字.
prec 可选,规定小数点后的位数.

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

提示和注释

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

注释:prec 参数是在 php 4 中被引入的,实例代码如下:

<?php 

*/ 

echo round(3.4);         //输出3 

echo "<br>"; 

echo round(3.5);         //输出4 

echo "<br>"; 

echo round(3.6);         //输出4 

echo "<br>"; 

echo round(3.6,0);         //输出4 

echo "<br>"; 

echo round(1.95583,2);        //输出1.96 

echo "<br>"; 

echo round(1241757,-3);        //输出1242000 

echo "<br>"; 

echo round(4.045,2);         //输出4.05 

echo "<br>"; 

echo round(4.055,2);         //输出4.06 

 

//使用stdround函数代替php的round函数 

?>

 
<?php 

function   stdround($num,   $d=0)  

{  

      return   round($num   +   0.0001   /   pow(10,   $d),   $d);  

}    

         

echo   "round(1.005,2)= ".round(1.005,2). "n ";  

echo   "round(1.015,2)= ".round(1.015,2). "n ";  

echo   "round(1.025,2)= ".round(1.025,2). "n ";  

echo   "round(1.035,2)= ".round(1.035,2). "n ";  

echo   "round(1.045,2)= ".round(1.045,2). "n ";  

echo   "round(1.055,2)= ".round(1.055,2). "n ";  

echo   "round(1.065,2)= ".round(1.065,2). "n ";  

echo   "round(1.075,2)= ".round(1.075,2). "n ";  

echo   "round(1.085,2)= ".round(1.085,2). "n ";  

echo   "round(1.095,2)= ".round(1.095,2). "n "; 

 

echo   "stdround(1.005,2)= ".stdround(1.005,2). "n ";  

echo   "stdround(1.015,2)= ".stdround(1.015,2). "n ";  

echo   "stdround(1.025,2)= ".stdround(1.025,2). "n ";  

echo   "stdround(1.035,2)= ".stdround(1.035,2). "n ";  

echo   "stdround(1.045,2)= ".stdround(1.045,2). "n ";  

echo   "stdround(1.055,2)= ".stdround(1.055,2). "n ";  

echo   "stdround(1.065,2)= ".stdround(1.065,2). "n ";  

echo   "stdround(1.075,2)= ".stdround(1.075,2). "n ";  

echo   "stdround(1.085,2)= ".stdround(1.085,2). "n ";  

echo   "stdround(1.095,2)= ".stdround(1.095,2). "n "; 

 

$m=0.000000000000001;  

echo   "n ";  

echo   "round(1.005+{$m},2)= ".round(1.005+$m,2). "n ";  

echo   "round(1.015+{$m},2)= ".round(1.015+$m,2). "n ";  

echo   "round(1.025+{$m},2)= ".round(1.025+$m,2). "n ";  

echo   "round(1.035+{$m},2)= ".round(1.035+$m,2). "n ";  

echo   "round(1.045+{$m},2)= ".round(1.045+$m,2). "n ";  

echo   "round(1.055+{$m},2)= ".round(1.055+$m,2). "n ";  

echo   "round(1.065+{$m},2)= ".round(1.065+$m,2). "n ";  

echo   "round(1.075+{$m},2)= ".round(1.075+$m,2). "n ";  

echo   "round(1.085+{$m},2)= ".round(1.085+$m,2). "n ";  

echo   "round(1.095+{$m},2)= ".round(1.095+$m,2). "n "; 

 

echo   "round(1.005,2)= ".round(1.005,2). "n ";  

echo   "round(1.015,2)= ".round(1.015,2). "n ";  

echo   "round(1.025,2)= ".round(1.025,2). "n ";  

echo   "round(1.035,2)= ".round(1.035,2). "n ";  

echo   "round(1.045,2)= ".round(1.045,2). "n ";  

echo   "round(1.055,2)= ".round(1.055,2). "n ";  

echo   "round(1.065,2)= ".round(1.065,2). "n ";  

echo   "round(1.075,2)= ".round(1.075,2). "n ";  

echo   "round(1.085,2)= ".round(1.085,2). "n ";  

echo   "round(1.095,2)= ".round(1.095,2). "n "; 

?>

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
WINDOWS服务器安装多套PHP的另类解决方案
Oct 09 PHP
无数据库的详细域名查询程序PHP版(4)
Oct 09 PHP
一个用mysql_odbc和php写的serach数据库程序
Oct 09 PHP
关于在php.ini中添加extension=php_mysqli.dll指令的说明
Jun 14 PHP
利用php递归实现无限分类 格式化数组的详解
Jun 08 PHP
zf框架的数据库追踪器使用示例
Mar 13 PHP
为PHP5.4开启Zend OPCode缓存
Dec 26 PHP
php在数据库抽象层简单使用PDO的方法
Nov 03 PHP
Laravel实现构造函数自动依赖注入的方法
Mar 16 PHP
CI操作cookie的方法分析(基于helper类库)
Mar 28 PHP
PHP中set_include_path()函数相关用法分析
Jul 18 PHP
PHP设计模式之迭代器模式Iterator实例分析【对象行为型】
Apr 26 PHP
PHP中创建图像并绘制文字的例子
Nov 19 #PHP
PHP图片处理之图片背景、画布操作
Nov 19 #PHP
php使用function_exists判断函数可用的方法
Nov 19 #PHP
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
Nov 19 #PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 #PHP
PHP图片处理之使用imagecopyresampled函数裁剪图片例子
Nov 19 #PHP
PHP图片处理之使用imagecopy函数添加图片水印实例
Nov 19 #PHP
You might like
php通过排列组合实现1到9数字相加都等于20的方法
2015/08/03 PHP
PHP在linux上执行外部命令的方法
2017/02/06 PHP
可以显示单图片,多图片ajax请求的ThickBox3.1类下载
2007/12/23 Javascript
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
javascript jq 弹出层实例
2013/08/25 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
2014/06/26 Javascript
深入理解javascript作用域和闭包
2014/09/23 Javascript
使用Sticker.js实现贴纸效果
2015/01/28 Javascript
jQuery添加options点击事件并传值实例代码
2016/05/18 Javascript
jQuery实现可拖拽的许愿墙效果【附demo源码下载】
2016/09/14 Javascript
Avalonjs双向数据绑定与监听的实例代码
2017/06/23 Javascript
vue一步步实现alert功能
2017/07/05 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
2019/04/02 Javascript
微信小程序iOS下拉白屏晃动问题解决方案
2019/10/12 Javascript
JS实现小星星特效
2019/12/24 Javascript
JavaScript Window窗口对象属性和使用方法
2020/01/19 Javascript
微信小程序后端实现授权登录
2020/02/24 Javascript
python安装与使用redis的方法
2016/04/19 Python
使用Python的Flask框架来搭建第一个Web应用程序
2016/06/04 Python
用python 批量更改图像尺寸到统一大小的方法
2018/03/31 Python
python文件操作之批量修改文件后缀名的方法
2018/08/10 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
python高斯分布概率密度函数的使用详解
2019/07/10 Python
python数组循环处理方法
2019/08/26 Python
Python实现井字棋小游戏
2020/03/09 Python
基于python检查矩阵计算结果
2020/05/21 Python
使用CSS3来制作消息提醒框
2015/07/12 HTML / CSS
劳力士官方珠宝商:J.R. Dunn Jewelers
2018/09/29 全球购物
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
.NET面试题:什么是反射
2016/09/30 面试题
JAVA招聘远程笔试题
2015/07/23 面试题
高校毕业生登记表自我鉴定
2013/11/03 职场文书
职业规划书如何设计?
2014/01/09 职场文书
公司成本主管岗位责任制
2014/02/21 职场文书
小学生表扬稿范文
2015/05/05 职场文书
Mysql索引失效 数据库表中有索引还是查询很慢
2022/05/15 MySQL