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 相关文章推荐
php对mongodb的扩展(初出茅庐)
Nov 11 PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 PHP
编译php 5.2.14+fpm+memcached(具体操作详解)
Jun 18 PHP
Yii分页用法实例详解
Dec 04 PHP
php生成年月日下载列表的方法
Apr 24 PHP
详解WordPress中的头像缓存和代理中的缓存更新方法
Mar 01 PHP
PHP使用数组实现矩阵数学运算的方法示例
May 29 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
Nov 13 PHP
php微信开发之图片回复功能
Jun 14 PHP
php中错误处理操作实例分析
Aug 23 PHP
关于Yii中模型场景的一些简单介绍
Sep 22 PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 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
php数据库连接
2006/10/09 PHP
PHP发明人谈MVC和网站设计架构 貌似他不支持php用mvc
2011/06/04 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
2018/02/07 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
2020/02/15 PHP
两种简单实现菜单高亮显示的JS类代码
2010/06/27 Javascript
Extjs 3.3切换tab隐藏相应工具栏出现空白解决
2013/04/02 Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
2014/01/02 Javascript
Jquery下EasyUI组件中的DataGrid结果集清空方法
2014/01/06 Javascript
js冒泡、捕获事件及阻止冒泡方法详细总结
2014/05/08 Javascript
JS基于面向对象实现的放烟花效果
2015/05/07 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
React中jquery引用的实现方法
2017/09/12 jQuery
JavaScript深拷贝和浅拷贝概念与用法实例分析
2018/06/07 Javascript
使用elementUI实现将图片上传到本地的示例
2018/09/04 Javascript
8个有意思的JavaScript面试题
2019/07/30 Javascript
vue 实现单选框设置默认选中值
2019/11/07 Javascript
NodeJs crypto加密制作token的实现代码
2019/11/15 NodeJs
Element图表初始大小及窗口自适应实现
2020/07/10 Javascript
Element中Slider滑块的具体使用
2020/07/29 Javascript
[01:57]2018DOTA2亚洲邀请赛赛前采访-iG
2018/04/03 DOTA
详解Python中 __get__和__getattr__和__getattribute__的区别
2016/06/16 Python
python 查找字符串是否存在实例详解
2017/01/20 Python
使用python Fabric动态修改远程机器hosts的方法
2018/10/26 Python
Python+Tensorflow+CNN实现车牌识别的示例代码
2019/10/11 Python
python生成器/yield协程/gevent写简单的图片下载器功能示例
2019/10/28 Python
python argparse传入布尔参数false不生效的解决
2020/04/20 Python
浅谈pandas dataframe对除数是零的处理
2020/07/20 Python
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
梅西百货官网:Macy’s
2020/08/04 全球购物
幼儿园开学家长寄语
2014/01/19 职场文书
观看安全警示教育片心得体会
2016/01/15 职场文书
详解CSS伪元素的妙用单标签之美
2021/05/25 HTML / CSS
Vue vee-validate插件的简单使用
2021/06/22 Vue.js