当前位置:  编程技术>php

php浮点数精度用法分析

    来源: 互联网  发布时间:2014-08-30

    本文导语:  例子,php浮点数用例。   代码示例:   会输出多少?8?7!   重温一下php的int 整型(integer)的形式描述:   decimal     : [1-9][0-9]*              | 0    hexadecimal : 0[xX][0-9a-fA-F]+    octal       : 0[0-7]+    i...

例子,php浮点数用例。
 

代码示例:

 

会输出多少?8?7!
 
重温一下php的int
整型(integer)的形式描述:  
decimal     : [1-9][0-9]* 
            | 0 
 
hexadecimal : 0[xX][0-9a-fA-F]+ 
 
octal       : 0[0-7]+ 
 
integer     : [+-]?decimal 
            | [+-]?hexadecimal 
            | [+-]?octal 
自 PHP 4.4.0 和 PHP 5.0.5后,最大值可以用常量PHP_INT_MAX来表示。
 
例2:
 

代码示例:
  

如果向八进制数传递了一个非法数字(即 8 或 9),则后面其余数字会被忽略。
 
有关php中float的用法,浮点数的形式表示:  
 

LNUM          [0-9]+ 
DNUM          ([0-9]*[.]{LNUM}) | ({LNUM}[.][0-9]*) 
EXPONENT_DNUM [+-]?(({LNUM} | {DNUM}) [eE][+-]? {LNUM})  
 

关于浮点数精度的警告

显然简单的十进制分数如同 0.1 或 0.7不能在不丢失一点点精度的情况下转换为内部二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10)通常会返回 7 而不是预期中的 8,因为该结果内部的表示其实是类似 7.9。

这和一个事实有关,那就是不可能精确的用有限位数表达某些十进制分数。例如,十进制的 1/3 变成了 0.3。
所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数或者 gmp 函数。

您可能感兴趣的文章:
  • php sprintf函数用法 php浮点数格式
  • php中float(浮点数)比较的问题
  • PHP浮点数的问题探讨
  • PHP浮点数比较不准确的解决方法

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • PHP的substr() 函数用法
  • php setcookie函数的参数说明及其用法
  • php中检测变量是否是一个对象的is_object函数介绍及用法举例
  • PHP函数microtime()用法与说明
  • php session 原理详解,用法介绍以及如何设置过期时间
  • php析构函数用法举例
  • php时间格式化函数date介绍及用法参考
  • PHP随机显示指定文本(if elseif的用法)
  • php析构函数用法分享
  • php goto语句用法简介
  • PHP函数microtime()时间戳的定义与用法
  • php pdo mysql query用法介绍
  • PHP ini_set与ini_get函数用法
  • php STDIN标准输入用法举例
  • php zip解压缩类pclzip用法举例
  • MySQL和PHP中substr函数用法
  • PHP中ini_set和ini_get函数的用法小结
  • php pdo insert与pdo insertId的用法
  • php GD库函数getimagesize()的用法
  • php5析构函数用法示例
  • php中htmlspecialchars与htmlentiti用法
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • IIS7配置PHP图解(IIS7+PHP_5.2.17/PHP_5.3.5)
  • PHP 5.4.19 和 PHP 5.5.3 发布及下载地址
  • php输入流php://input使用示例(php发送图片流到服务器)
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • PHP转换器 HipHop for PHP
  • PHP去除html标签,php标记及css样式代码参考
  • php的sprintf函数的用法 控制浮点数格式 iis7站长之家
  • PHP 'ext/soap/php_xml.c'不完整修复存在多个任意文件泄露漏洞
  • PHP的JavaScript框架 PHP.JS


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3