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的控制语句
Oct 09 PHP
php实现的简单压缩英文字符串的代码
Apr 24 PHP
浅谈php和.net的区别
Sep 28 PHP
php rsa加密解密使用详解
Jan 14 PHP
在Windows XP下安装Apache+MySQL+PHP环境
Feb 22 PHP
php微信开发之带参数二维码的使用
Aug 03 PHP
php实现文章置顶功能的方法
Oct 20 PHP
PHP面向对象继承用法详解(优化与减少代码重复)
Dec 02 PHP
Thinkphp5.0自动生成模块及目录的方法详解
Apr 17 PHP
PHP基于自定义函数实现的汉字转拼音功能实例
Sep 30 PHP
PHP实现微信申请退款功能
Oct 01 PHP
PHP之多条件混合筛选功能的实现方法
Oct 09 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
PHP5 面向对象程序设计
2008/02/13 PHP
Session服务器配置指南与使用经验的深入解析
2013/06/17 PHP
php版小黄鸡simsimi聊天机器人接口分享
2014/01/26 PHP
PHP批量去除BOM头代码分享
2015/06/26 PHP
WordPress中设置Post Type自定义文章类型的实例教程
2016/05/10 PHP
php利用header函数下载各种文件
2016/08/24 PHP
常见的5个PHP编码小陋习以及优化实例讲解
2021/02/27 PHP
将string解析为json的几种方式小结
2010/11/11 Javascript
JS如何判断移动端访问设备并解析对应CSS
2013/11/27 Javascript
jquery自定义下拉列表示例
2014/04/25 Javascript
用javascript关闭本窗口技巧小结
2014/09/05 Javascript
javascript面向对象程序设计(一)
2015/01/29 Javascript
jquery操作angularjs对象
2015/06/26 Javascript
javascript封装 Cookie 应用接口
2015/08/07 Javascript
学习jQuey中的return false
2015/12/18 Javascript
AngularJS表格样式简单设置方法示例
2017/03/03 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
jQuery创建及操作xml格式数据示例
2018/05/26 jQuery
Vue 第三方字体图标引入 Font Awesome的方法
2018/09/28 Javascript
PostgreSQL Node.js实现函数计算方法示例
2019/02/12 Javascript
django js 实现表格动态标序号的实例代码
2019/07/12 Javascript
layer 关闭指定弹出层的例子
2019/09/25 Javascript
js实现简单点赞操作
2020/03/17 Javascript
小程序自定义圆形进度条
2020/11/17 Javascript
[03:27]《辉夜杯》线下训练营 导师CU和海涛指点迷津
2015/10/23 DOTA
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
Bandier官网:奢侈、时尚前卫的健身服装首选目的地
2020/07/05 全球购物
管道维修工岗位职责
2013/12/27 职场文书
社区健康教育工作方案
2014/06/03 职场文书
预防传染病方案
2014/06/14 职场文书
2015年秋季小学开学标语
2015/07/16 职场文书
高三化学教学反思
2016/02/22 职场文书
《活见鬼》教学反思
2016/02/24 职场文书
Vue Element UI自定义描述列表组件
2021/05/18 Vue.js
javascript的setTimeout()使用方法总结
2021/11/20 Javascript
PostgreSQL怎么创建分区表详解
2022/06/25 PostgreSQL