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 相关文章推荐
如何在PHP中使用Oracle数据库(5)
Oct 09 PHP
用文本文件制作留言板提示(下)
Oct 09 PHP
Zend Studio 无法启动的问题解决方法
Dec 04 PHP
php 连接mssql数据库 初学php笔记
Mar 01 PHP
php文件操作实例代码
May 10 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
Jan 07 PHP
php实现批量删除挂马文件及批量替换页面内容完整实例
Jul 08 PHP
php 的反射详解及示例代码
Aug 25 PHP
PHP实现无限分类的实现方法
Nov 14 PHP
PHP PDOStatement::getColumnMeta讲解
Feb 01 PHP
PHP filter_var() 函数, 验证判断EMAIL,URL等
Mar 09 PHP
Memcached介绍及php-memcache扩展安装
Apr 01 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
世界收音机发展史
2021/03/01 无线电
SONY SRF-40W电路分析
2021/03/02 无线电
PHP中str_replace函数使用小结
2008/10/11 PHP
微盾PHP脚本加密专家php解密算法
2020/09/13 PHP
CI(CodeIgniter)模型用法实例分析
2016/01/20 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
Thinkphp 框架扩展之数据库驱动常用方法小结
2020/04/23 PHP
鼠标滑上去后图片放大浮出效果的js代码
2011/05/28 Javascript
js日期相关函数总结分享
2013/10/15 Javascript
jquery删除数据记录时的弹出提示效果
2014/05/06 Javascript
JavaScript使用setTimeout实现延迟弹出警告框的方法
2015/04/07 Javascript
js实现的彩色方块飞舞奇幻效果
2016/01/27 Javascript
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
2017/02/10 Javascript
数组Array的一些方法(总结)
2017/02/17 Javascript
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
javascript定时器的简单应用示例【控制方块移动】
2019/06/17 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
JavaScript观察者模式原理与用法实例详解
2020/03/10 Javascript
Vue按时间段查询数据组件使用详解
2020/08/21 Javascript
[03:15]DOTA2-DPC中国联赛1月22日Recap集锦
2021/03/11 DOTA
仅用50行Python代码实现一个简单的代理服务器
2015/04/08 Python
python Socket之客户端和服务端握手详解
2017/09/18 Python
python 判断参数为Nonetype类型或空的实例
2018/10/30 Python
python标记语句块使用方法总结
2019/08/05 Python
Selenium基于PIL实现拼接滚动截图
2020/04/10 Python
突袭HTML5之Javascript API扩展1—Web Worker异步执行及相关概述
2013/01/31 HTML / CSS
澳洲国民品牌乡村路折扣店:Country Road & Trenery Outlet
2018/04/19 全球购物
Vrbo西班牙:预订您的度假公寓(公寓、乡村房屋…)
2020/04/27 全球购物
英语专业求职信
2014/07/08 职场文书
2015年毕业生实习评语
2015/03/25 职场文书
侵犯商业秘密的律师函
2015/05/27 职场文书
Django展示可视化图表的多种方式
2021/04/08 Python
Golang 正则匹配效率详解
2021/04/25 Golang
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫
教你使用Jenkins集成Harbor自动发布镜像
2022/04/03 Servers
python字符串的一些常见实用操作
2022/04/06 Python