文档章节

PHP_小数/四舍五入/上进/下取等

喵王不瞌睡
 喵王不瞌睡
发布于 2015/02/05 16:10
字数 536
阅读 122
收藏 2

小数例子:


PHP保留两位小数并且四舍五入

$n=0.1265489;
echo sprintf("%.2f", $n); // 0.13

大家可以看到我们用到了sprintf函数对$n进行了格式化%.2f是目标格式,其中2表示两位f表示float(浮点型) 第3为小数6被四舍五入

再看个例子


$n=0.1265489
echo substr(sprintf("%.3",$n),0,-1);// 0.12

代码输出了保留2为小数没有四舍五入,实际上我们了解了sprintf的特性会四舍五入小数后我们多保留了一位,然后用substr来截取前2位



取整例子:


echo ceil(4.1);    // 5
echo ceil(9.999);  // 10

ceil函数是向上取整函数,什么叫向上呢? 就是说如果超出一点点那就向前进一位如例子中4.1就变成了5。


跟它相反还有一个函数叫floor我们看看它的用法


echo floor(4.1);   // 4
echo floor(9.999); // 9

floor的特性在第二个输出中显的特别明显,那就是不给你多少位小数哪怕是无限接近10也没有用向下取到的整数就是9。


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
?>


round函数在PHP手册中的说明是:

float round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )

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

round 的参数一是数据源,参数二是要保留的小数位而且之后一位(比如你输入2那么第3为是之后一位)被四舍五入,当他是负数的时候,从数据源最后一位开始往前数相应的长度制0并将最后一位四舍五入比如round(123456,-2) 就是123456从6开始往前数两位都变成零,并且最后一位5(从后往前数第一位是6最后一位是5)被四舍五入,输出123500


本文转载自:http://www.phpla.com/essay/37

共有 人打赏支持
喵王不瞌睡
粉丝 11
博文 168
码字总数 51104
作品 0
浦东
个人站长
hive数字处理

在hive中,两个字段做除法,如何取得想要的小数位数。 如果非科学计数法,比如1/3,没有0,所有就不会存在科学计数法,所以如果想要取多少位,直接round(1/3,2)即可。 如果是科学计数法,比如...

cjun1990
2016/12/17
113
0
js 实现四舍五入&fixed方法异常处理

JS四舍五入的函数:toFixed(n),n为要保留的小数位数,n取0~20。 问题:当n超过20的时候,JS会出错。 举例一: 输出结果:10.01 举例二: 输出结果:0.00 解决方案: (一)对JS中的Numbe...

荆瑶
2016/10/31
15
0
PHP 小数 有效位数 四舍五入 处理

PHP浮点数保留两位小数, 四舍五入,取整(进一法,舍去法) php保留两位小数(不四舍五入) $float = 1999.685039370079;echo sprintf("%.2f",substr(sprintf("%.3f", $float), 0, -2)); php保留两...

淡水鱼
2013/02/03
0
0
Oracle中trunc函数、round 函数、ceil函数和floor函数的使用

1.1trunc函数处理数字 trunc函数返回处理后的数值,其工作机制与ROUND函数极为类似,只是该函数不对指定小数前或后的部分做相应舍入选择处理,而统统截去。 其具体的语法格式如下 TRUNC(num...

qhaiyan
2016/03/11
27
0
对 java 数字小数点后位数进行处理

一、返回 String 类型数据 对数据进行处理后,返回 String 类型数据,可以通过如下方式进行处理: DecimalFormat 对数据格式化 String.format 对数据格式化 两者达到的效果是一样的。 补充:...

pding
05/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

中秋快乐!!!

HiBlock
今天
1
0
Node安装教程

1、安装最新版的node 2、设置相关目录(以D盘为例) 分别建立目录:D:\node,D:\node\node-globa,D:\node\node-cache 命令行输入: // 设置npm国内镜像 npm config set registry https://re...

Mohan710
今天
3
0
中国发布域名系统基础软件 “红枫”

9月12日消息,域名工程中心(英文缩写 ZDNS)发布了宣称自主开发的域名系统基础软件 “红枫(Maple DNS)”。 9月12日消息,域名工程中心(英文缩写 ZDNS)发布了宣称自主开发的域名系统基础软...

问题终结者
今天
3
0
Shell编程(分发系统介绍、expect远程登录、expect远程执行命令、expect传递参数)

分发系统介绍expect 分发系统expect即分发脚本,是一种脚本语言;通过他可以实现传输,输入命令(上线代码) 应用场景:业务越来越大,网站app,后端,编程语言是php,所以就需要配置lamp或者...

蛋黄_Yolks
今天
4
0
Java Http请求工具类

public static String httpPost(String source, String params) {URL url = null;HttpURLConnection conn = null;OutputStream os = null;String ret = null;try {......

yuewawa
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部