php中的四舍五入函数代码(floor函数、ceil函数、round与intval)


Posted in PHP onJuly 14, 2014

floor函数和ceil函数互相搭配起来可以使php 处理的数据更加真实可靠。

一、先来看floor函数:

语法:

float floor ( float value )

说明:

返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

floor() 例子 1

<?php 
 echo floor(1.6); // will output "1" 
 echo floor(-1.6); // will output "-2" 
?>

floor() 例子 2

<?php
echo(floor(0.60));
echo(floor(0.40));
echo(floor(5));
echo(floor(5.1));
echo(floor(-5.1));
echo(floor(-5.9))
?>

输出:
0
0
5
5
-6
-6

二、ceil函数:

语法:

float ceil ( float value )

说明:

返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

ceil() 例子:

<?php 
echo ceil(4.3);  // 5 
echo ceil(9.999); // 10 
echo ceil(-3.14); // -3 
?>

看到这两个函数的区别了么。。

在分页时我们会常用到的
//页码计算:

$lastpg=ceil($totle/$displaypg); //最后页,也是总页数,用ceil就方便多了。
  $lastpg=$lastpg ? $lastpg : 1; //没有显示条目,置最后页为1 
  $page=min($lastpg,$page); 
  $prepg=$page-1; //上一页 
  $nextpg=($page==$lastpg ? 0 : $page+1); //下一页 
  $firstcount=($page-1)*$displaypg;

当然,如果需要制定精度就需要使用round函数了。

三、round函数:

语法:

float round ( float val [, int precision] )

说明:

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

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

四、intval—对变数转成整数型态

变量转成整数类型。

语法: int intval(mixed var, int [base]);

返回值: 整数

函数种类: PHP 系统功能
 
内容说明

本函数可将变量转成整数类型。可省略的参数 base 是转换的基底,默认值为 10。转换的变量 var 可以为数组或类之外的任何类型变量。

例子intval()

<?php 
echo intval(4.3); //4 
echo intval(4.6); // 4 
?>

注:intval如果是字符型的会自动转换为0 如

intval('abc');

输出结果 0

如果是

intval('5fd');

输出结果是

5

PHP 相关文章推荐
substr()函数中文版
Oct 09 PHP
一段php加密解密的代码
Oct 09 PHP
PHP 判断常量,变量和函数是否存在
Apr 26 PHP
php下清空字符串中的HTML标签的代码
Sep 06 PHP
用PHP编写和读取XML的几种方式
Jan 12 PHP
php中通过curl检测页面是否被百度收录
Sep 27 PHP
腾讯微博提示missing parameter errorcode 102 错误的解决方法
Dec 22 PHP
浅谈PDO的rowCount函数
Jun 18 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
Mar 07 PHP
深入理解PHP 数组之count 函数
Jun 13 PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 PHP
PHP 网站修改默认访问文件的nginx配置
May 27 PHP
mantis安装、配置和使用中的问题小结
Jul 14 #PHP
kohana框架上传文件验证规则写法示例
Jul 14 #PHP
PHP开发框架kohana中处理ajax请求的例子
Jul 14 #PHP
兼容ie6浏览器的php下载文件代码分享
Jul 14 #PHP
国产PHP开发框架myqee新手快速入门教程
Jul 14 #PHP
PHP开发框架kohana3 自定义路由设置示例
Jul 14 #PHP
PHP缓存机制Output Control详解
Jul 14 #PHP
You might like
php桌面中心(二) 数据库写入
2007/03/11 PHP
php不用内置函数对数组排序的两个算法代码
2010/02/08 PHP
php header功能的使用
2013/10/28 PHP
php分页查询的简单实现代码
2017/03/14 PHP
js中onload与onunload的使用示例
2013/08/25 Javascript
Nodejs为什么选择javascript为载体语言
2015/01/13 NodeJs
js实现搜索框关键字智能匹配代码
2020/03/26 Javascript
基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用
2016/05/12 Javascript
JS工作中的小贴士之”闭包“与事件委托的”阻止冒泡“
2016/06/16 Javascript
原生JS实现的放大镜效果实例代码
2016/10/15 Javascript
JS中数组重排序方法
2016/11/11 Javascript
JavaScript交换两个变量值的七种解决方案
2016/12/01 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
原生js实现吸顶效果
2017/03/13 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
2017/09/12 Javascript
bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能
2017/12/28 Javascript
js闭包学习心得总结
2018/04/17 Javascript
使用Vue自定义指令实现Select组件
2018/05/24 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
2018/05/25 Javascript
vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀
2018/06/13 Javascript
JS的时间格式化和时间戳转换函数示例详解
2020/07/27 Javascript
python中的装饰器详解
2015/04/13 Python
python使用xlrd模块读取xlsx文件中的ip方法
2019/01/11 Python
详解python校验SQL脚本命名规则
2019/03/22 Python
python sorted函数的小练习及解答
2019/09/18 Python
Tensorflow 多线程与多进程数据加载实例
2020/02/05 Python
Django model重写save方法及update踩坑详解
2020/07/27 Python
多个版本的python共存时使用pip的正确做法
2020/10/26 Python
The Athlete’s Foot新西兰:新西兰最大的运动鞋零售商
2019/12/23 全球购物
《自选商场》教学反思
2014/02/14 职场文书
《寓言两则》教学反思
2014/02/27 职场文书
通知书大全
2015/04/27 职场文书
2019年汽车租赁合同范本!
2019/08/12 职场文书
MySQL索引篇之千万级数据实战测试
2021/04/05 MySQL
Redis做数据持久化的解决方案及底层原理
2021/07/15 Redis
Nginx+Tomcat负载均衡多实例详解
2022/04/11 Servers