小数例子:
PHP保留两位小数并且四舍五入
~~~
$n=0.1265489;
echo sprintf("%.2f", $n); // 0.13
~~~
大家可以看到我们用到了`sprintf`函数对`$n`进行了格式化`%.2f`是目标格式,其中2表示两位,`f`表示float(浮点型), 第3位小数6被四舍五入,再看个例子:
~~~
$n=0.1265489
~~~
echo substr(sprintf("%.3f",$n),0,-1);// 0.12代码输出了保留2为小数没有四舍五入,实际上我们了解了sprintf的特性会四舍五入小数后我们多保留了一位,然后用substr来截取前2位
取整例子:
echo ceil(4.1); // 5
echo ceil(9.999); // 10ceil函数是向上取整函数,什么叫向上呢? 就是说如果超出一点点那就向前进一位如例子中4.1就变成了
跟它相反还有一个函数叫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
- 目录
- Array
- array_column()
- 数组和变量
- compact() 函数
- extract() 函数
- Url
- base64_encode — 使用 MIME base64 对数据进行编码
- 图像
- getimagesize()
- 随机数
- getrandmax
- mt_getrandmax
- mt_rand
- rand
- empty函数
- exec()函数
- 权限修改
- 可变函数
- 函数闭包
- 报警级别
- 持续函数
- 自定义
- 字符处理
- 中文首字母
- 随机字符串
- url函数
- parse_url_param
- 页面采集
- 简单采集
- Referer采集
- CURL
- 发送json数据
- Curl多线程
- 文件处理
- 递归删除
- 图片显示
- 类方法
- 保留字
- 检查类文件名称
- Cookie
- 数组
- 数学函数
- 第三方函数库
- 精度计算
- BC Math
- 计算执行时间
- 日期时间
- 时间戳
- header
- 调试函数
- get_class
- get_class_methods
- 数组函数
- array_intersect_key()
- 二维数组
- Base64编码
- URL安全
- 加密扩展
- Hash函数
- hash_file
- hash_hmac
- hash_algos
- 文件读写
- is_writable()
- file_put_contents()