php四舍五入函数round和ceil用法区别介绍
时间:2016-10-06
php round函数对浮点数进行四舍五入,该函数有两个参数,第二个参数可以指定精度。ceil函数严格的说并不是四舍五入,它只是返回不小于该数值的下一个整数。本文章向大家介绍php四舍五入函数round和ceil用法和实例,需要的朋友可以参考一下。
round函数
round() 函数对浮点数进行四舍五入
语法:
float round ( float val [, int precision] )
返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。
实例:
<?php
/*by http://www.manongjc.com */
$number = round(11.1); // 11
$number = round(11.9); // 12
$number = round(11.5); // 12
$number = round(11); // 11
$a = round(4.4999); // 4
$b = round(4.123456, 3); // 4.123
$c = round(4.12345, 4); // 4.1235
$d = round(1000 / 160); // 6
?>
round()函数进位问题
今天写程序时发现PHP四舍五入函数round没有把0.5进位,查了下资料发现如下解释:
在对正好一半的分数进行舍入时 round() 在偶数次舍去,在奇数次进位。如果你想迫使它对 .5(或 .05)总向一个方向舍入,加上或减去一个很小的因子。对一半值舍去对另一半值进一的背后原因是避免传统的银行问题,即如果总是舍去则银行从顾客那里多拿了钱,如果总是进一则银行最终会损失了钱。对此平均舍入则在统计上达到了平衡。
如需强制进位的解决方案
function stdround($num, $d=0){
return round($num + 0.0001 / pow(10, $d), $d);
}
ceil函数
ceil() 函数向上舍入为最接近的整数。
语法:
ceil(x);
返回不小于 x 的下一个整数,x 如果有小数部分则进一位。
ceil() 返回的类型仍然是 float。
实例:
<?php
/*by http://www.manongjc.com/article/1532.html */
$number = ceil(11.9); // 12
$number = ceil(11.1); // 12
$number = ceil(11); // 11
?>
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- CentOS7 安装 zabbix 4.0 教程(图文详解)
- 浅谈简单使用CentOS7防火墙及开放端口
- Linux后台运行Python程序的几种方法讲解
- tr命令在统计英文单词出现频率中的妙用
- 浅析CentOS8虚拟机访问Windows10主机文件夹方法
- CentOS 7 安装 Jenkins过程详解
- ubuntu15.10下hadoop2.7.2的安装与配置详解
- linux服务器被植入ddgs、qW3xT.2挖矿病毒的处理实战记录
- Linux 创建修改删除用户和组的方法
- 详解Ubuntu16.04安装nvidia驱动+CUDA+cuDNN的教程
- linux free命令详解
- Linux下memcache编译安装与基本使用教程
- Linux中MongoDB如何实现远程自动备份详解
- 覆盖原先的PATH导致命令失效提示command not found的解决方法
- Linux中可以节省你时间的15个命令别名