PHP浮点比较大小的方法


Posted in PHP onFebruary 14, 2016

本文实例讲述了PHP浮点比较大小的方法。分享给大家供大家参考,具体如下:

<?php
/**
 * 浮点数一般是不能用来比较大小的,但是我们可以用一种变通的的方式
 * 用var_dump输出浮点是看不出效果的,可以用serialize查看
 * 1.round 2.浮点转换成字符串
 *
 * 转换成字符串方法:
 * 通过在其前面加上(string)或用strval()函数来转变成 字符串
 * 在一个需要字符串的表达式中,字符串会自动转变,比如在使用函数 echo() 或 print() 时, 或在一个变量和一个 字符串 进行比较时,就会发生这种转变
 * true会转为1 , 而false则会转为空字符串
 *
 */
$a = 13.2;
$b = 24;
$c = $a/$b;
//实际值是这个d:0.54999999999999993338661852249060757458209991455078125;
echo serialize($c).'<br/>';//
echo $c.'<br/>';//输出时会显示成0.55 实际的值是比他小的
//所以直接和0.55比较大小是不成立的
if($c == 0.55){
  echo 'nothing';
}
$c = round($c,2);
//用round处理
if($c == 0.55){
  echo 'ok';
}
echo "<br/>";
//强制转为字符串
// $c = (string)$c;
// $c = strval($c);
if("$c" == 0.55){
  echo 'ok';
}
?>

运行结果如下:

d:0.54999999999999993338661852249060757458209991455078125;
0.55
ok
ok

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
用ADODB来让PHP操作ACCESS数据库的方法
Dec 31 PHP
php目录管理函数小结
Sep 10 PHP
Php图像处理类代码分享
Jan 19 PHP
解析php中die(),exit(),return的区别
Jun 20 PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
Oct 10 PHP
php数组合并的二种方法
Mar 21 PHP
php将文本文件转换csv输出的方法
Dec 31 PHP
PHP实现的构造sql语句类实例
Feb 03 PHP
php 使用curl模拟ip和来源进行访问的实现方法
May 02 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
Oct 11 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
Oct 21 PHP
php使用自带dom扩展进行元素匹配的原理解析
May 29 PHP
PHP魔术方法使用方法汇总
Feb 14 #PHP
PHP函数超时处理方法
Feb 14 #PHP
PHP使用file_get_content设置头信息的方法
Feb 14 #PHP
PHP下使用mysqli的函数连接mysql出现warning: mysqli::real_connect(): (hy000/1040): ...
Feb 14 #PHP
PHP缓冲区用法总结
Feb 14 #PHP
PHP二维数组排序简单实现方法
Feb 14 #PHP
php的闭包(Closure)匿名函数初探
Feb 14 #PHP
You might like
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
php中使用临时表查询数据的一个例子
2013/02/03 PHP
基于empty函数的输出详解
2013/06/17 PHP
PHP+JQuery+Ajax实现分页方法详解
2016/08/06 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
javascript使用activex控件的代码
2011/01/27 Javascript
jquery可见性过滤选择器使用示例
2013/06/24 Javascript
jquery 图片缩放拖动的简单实例
2014/01/08 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
2014/02/20 Javascript
JavaScript跨域方法汇总
2014/10/16 Javascript
jQuery 生成svg矢量二维码
2016/08/09 Javascript
详解JSON1:使用TSQL查询数据和更新JSON数据
2016/11/21 Javascript
Node.js中.pfx后缀文件的处理方法
2017/03/10 Javascript
ECMAScript6--解构
2017/03/30 Javascript
微信小程序 下拉菜单简单实例
2017/04/13 Javascript
原生JS与jQuery编写简单选项卡
2017/10/30 jQuery
ES6知识点整理之模块化的应用详解
2019/04/15 Javascript
js单线程的本质 Event Loop解析
2019/10/29 Javascript
python Django连接MySQL数据库做增删改查
2013/11/07 Python
Python获取文件所在目录和文件名的方法
2017/01/12 Python
Python 稀疏矩阵-sparse 存储和转换
2017/05/27 Python
Python hashlib模块加密过程解析
2019/11/05 Python
为什么python比较流行
2020/06/19 Python
Python3使用tesserocr识别字母数字验证码的实现
2021/01/29 Python
详解HTML5如何使用可选样式表为网站或应用添加黑暗模式
2020/04/07 HTML / CSS
购房委托书范本
2014/09/18 职场文书
公安民警正风肃纪剖析材料
2014/10/10 职场文书
缓刑人员思想汇报
2014/10/11 职场文书
语文教师个人工作总结
2015/02/06 职场文书
公务员年度个人总结
2015/02/12 职场文书
幼儿园重阳节活动总结
2015/05/05 职场文书
初中英语教学随笔
2015/08/15 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
优秀的商业计划书,让融资一步到位
2019/05/07 职场文书
Go语言实现Base64、Base58编码与解码
2021/07/26 Golang
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js