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 相关文章推荐
php+dbfile开发小型留言本
Oct 09 PHP
删除无限分类并同时删除它下面的所有子分类的方法
Aug 08 PHP
linux iconv方法的使用
Oct 01 PHP
解析数组非数字键名引号的必要性
Aug 09 PHP
C# WinForm中实现快捷键自定义设置实例
Jan 23 PHP
PHP基于单例模式实现的数据库操作基类
Jan 15 PHP
thinkPHP批量删除的实现方法分析
Nov 09 PHP
php 三元运算符实例详细介绍
Dec 15 PHP
php写app接口并返回json数据的实例(分享)
May 20 PHP
PHP简单实现防止SQL注入的方法
Mar 13 PHP
PHP判断是否是微信打开还是浏览器打开的方法
Feb 27 PHP
WordPress免插件实现面包屑导航的示例代码
Aug 20 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实现var_export的详细介绍
2013/06/20 PHP
php输入流php://input使用浅析
2014/09/02 PHP
crontab无法执行php的解决方法
2016/01/25 PHP
CI框架出现mysql数据库连接资源无法释放的解决方法
2016/05/17 PHP
PHP命名空间定义与用法实例分析
2019/08/14 PHP
php+websocket 实现的聊天室功能详解
2020/05/27 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
按给定几率进行随机抽取的js代码
2010/12/28 Javascript
Dom操作之兼容技巧分享
2011/09/20 Javascript
一个JavaScript去除字符串末尾的空白实例代码
2014/09/22 Javascript
javascript实现捕捉键盘上按下的键
2015/05/05 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
2016/05/05 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
第一次记录Bootstrap table学习笔记(1)
2017/05/18 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
2017/07/21 Javascript
浅谈vue的iview列表table render函数设置DOM属性值的方法
2017/09/30 Javascript
JS实现水平移动与垂直移动动画
2019/12/19 Javascript
JavaScript实现放大镜效果代码示例
2020/04/29 Javascript
Auto.JS实现抖音刷宝等刷视频app,自动点赞,自动滑屏,自动切换视频功能
2020/05/08 Javascript
[02:45]DOTA2英雄基础教程 伐木机
2013/12/23 DOTA
[01:20:38]完美世界DOTA2联赛 GXR vs IO 第一场 11.07
2020/11/09 DOTA
Python 字符串定义
2009/09/25 Python
python实现socket端口重定向示例
2014/02/10 Python
Python计算程序运行时间的方法
2014/12/13 Python
Python OpenCV对本地视频文件进行分帧保存的实例
2019/01/08 Python
Python基于execjs运行js过程解析
2020/11/27 Python
CSS3 display知识详解
2015/11/25 HTML / CSS
乐天旅游台湾网站:Rakuten Travel TW
2017/06/01 全球购物
什么是虚拟内存?虚拟内存有什么优势?
2012/02/19 面试题
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
意向书范本
2014/07/29 职场文书
公司领导班子四风对照检查材料
2014/09/27 职场文书
会议欢迎词
2015/01/23 职场文书
2016大学迎新欢迎词
2015/09/29 职场文书
浅析Redis Sentinel 与 Redis Cluster
2021/06/24 Redis
新手初学Java网络编程
2021/07/07 Java/Android