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 相关文章推荐
VML绘图板②脚本--VMLgraph.js、XMLtool.js
Oct 09 PHP
php防盗链的常用方法小结
Jul 02 PHP
php中对2个数组相加的函数
Jun 24 PHP
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
Apr 26 PHP
PHP 登录完成后如何跳转上一访问页面
Jan 14 PHP
分享一段php获取linux服务器状态的代码
May 27 PHP
Smarty最简单实现列表奇偶变色的方法
Jul 01 PHP
php生成动态验证码gif图片
Oct 19 PHP
PHP实现查询手机归属地的方法详解
Apr 28 PHP
Laravel中使用Queue的最基本操作教程
Dec 27 PHP
PHP chunk_split()函数讲解
Feb 12 PHP
laravel5表单唯一验证的实例代码
Sep 30 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循环获取GET和POST值的代码
2008/04/09 PHP
php根据分类合并数组的方法实例详解
2013/11/06 PHP
smarty模板中拼接字符串的方法
2014/02/14 PHP
autoPlay 基于jquery的图片自动播放效果
2011/12/07 Javascript
js 页面元素的几个用法总结
2013/11/18 Javascript
使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
2015/08/21 NodeJs
jQuery实现向下滑出的平滑下拉菜单效果
2015/08/21 Javascript
JavaScript常用字符串与数组扩展函数小结
2016/04/24 Javascript
js获取鼠标点击的对象,点击另一个按钮删除该对象的实现代码
2016/05/13 Javascript
详解Vue自定义过滤器的实现
2017/01/10 Javascript
实现单层json按照key字母顺序排序的示例
2017/12/06 Javascript
详解easyui基于 layui.laydate日期扩展组件
2018/07/18 Javascript
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
[02:15]2014DOTA2国际邀请赛 专访LGD.lin小兔子是大腿
2014/07/14 DOTA
[00:50]2014DOTA2国际邀请赛 NEWBEE战队回顾
2014/08/01 DOTA
python paramiko模块学习分享
2017/08/23 Python
spark: RDD与DataFrame之间的相互转换方法
2018/06/07 Python
Django+JS 实现点击头像即可更改头像的方法示例
2018/12/26 Python
Python实战之制作天气查询软件
2019/05/14 Python
python 解决mysql where in 对列表(list,,array)问题
2020/06/06 Python
基于Python中Remove函数的用法讨论
2020/12/11 Python
python实现模拟器爬取抖音评论数据的示例代码
2021/01/06 Python
python上下文管理的使用场景实例讲解
2021/03/03 Python
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
大一新生军训时的自我评价分享
2013/12/05 职场文书
采购主管的岗位职责
2013/12/17 职场文书
财务出纳岗位职责
2014/02/03 职场文书
军校大学生个人的自我评价
2014/02/17 职场文书
学生干部学习的自我评价
2014/02/18 职场文书
工作决心书范文
2014/03/11 职场文书
护士求职信
2014/07/05 职场文书
民族学专业大学生职业规划范文:清晰未来的构想
2014/09/20 职场文书
Jupyter notebook 输出部分显示不全的解决方案
2021/04/24 Python
Go语言的协程上下文的几个方法和用法
2022/04/11 Golang