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的无限分类实现想法~
Jan 02 PHP
PHP实时显示输出
Oct 02 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
Jun 28 PHP
ThinkPHP3.1之D方法实例详解
Jun 20 PHP
php+mysql结合Ajax实现点赞功能完整实例
Jan 30 PHP
php数字每三位加逗号的功能函数
Oct 22 PHP
PHP文件缓存smarty模板应用实例分析
Feb 26 PHP
thinkPHP引入类的方法详解
Dec 08 PHP
PHP使用Redis替代文件存储Session的方法
Feb 15 PHP
php使用PDO获取结果集的方法
Feb 16 PHP
PHP去除空数组且数组键名重置的讲解
Feb 28 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
Apr 15 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实现快速排序的三种方法分享
2014/03/12 PHP
php中explode的负数limit用法分析
2015/02/27 PHP
Ubuntu彻底删除PHP7.0的方法
2018/07/27 PHP
Extjs学习笔记之一 初识Extjs之MessageBox
2010/01/07 Javascript
JQuery的一些小应用收集
2010/03/27 Javascript
jquery实现鼠标悬浮停止轮播特效
2020/08/20 Javascript
jquery实现图片切换代码
2016/10/13 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
JavaScript无缝滚动效果的实例代码
2017/03/27 Javascript
jQuery ajax动态生成table功能示例
2017/06/14 jQuery
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
three.js实现圆柱体
2018/12/30 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
浅析Vue下的components模板使用及应用
2019/11/27 Javascript
详解小程序BackgroundAudioManager踩坑之旅
2019/12/08 Javascript
Vue的全局过滤器和私有过滤器的实现
2020/04/20 Javascript
浅析JavaScript预编译和暗示全局变量
2020/09/03 Javascript
Python常用模块介绍
2014/11/21 Python
python基础while循环及if判断的实例讲解
2017/08/25 Python
python判断设备是否联网的方法
2018/06/29 Python
由面试题加深对Django的认识理解
2019/07/19 Python
win10系统Anaconda和Pycharm的Tensorflow2.0之CPU和GPU版本安装教程
2019/12/03 Python
15行Python代码实现免费发送手机短信推送消息功能
2020/02/27 Python
3种适用于Python的疯狂秘密武器及原因解析
2020/04/29 Python
python中pathlib模块的基本用法与总结
2020/08/17 Python
纽约手袋品牌:KARA
2018/03/18 全球购物
NYX Professional Makeup官方网站:专业彩妆和美容产品
2019/10/29 全球购物
给客户的道歉信
2014/01/13 职场文书
关爱留守儿童标语
2014/06/18 职场文书
创先争优活动承诺书
2014/08/30 职场文书
家长会后的感想
2015/08/11 职场文书
《圆的周长》教学反思
2016/02/17 职场文书
送给客户微信问候语!
2019/07/04 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书
python lambda 表达式形式分析
2022/04/03 Python