首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php中的浮点数和双精度数的区别?

php中的浮点数和双精度数的区别?
EN

Stack Overflow用户
提问于 2010-07-19 20:10:08
回答 4查看 104.1K关注 0票数 124

我有这个代码

代码语言:javascript
复制
$vad = 1.1;

print gettype($vad);

var_dump($vad);

这将输出:

代码语言:javascript
复制
double
float(1.1) 

所以在php中是双精度还是浮点型?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-07-19 20:14:53

在PHP中没有区别。floatdoublereal是相同的数据类型。

在C语言中,所有内容都存储为double

实际大小仍然取决于平台。

有关详细信息,请参阅手册:

http://www.php.net/manual/en/language.types.float.php

票数 170
EN

Stack Overflow用户

发布于 2010-07-19 20:19:41

对于PHP,它们是相同的。http://www.php.net/manual/en/language.types.float.php

浮点数(也称为“浮点数”、“双精度数”或“实数”)可以使用以下任何语法指定:

令人困惑的部分是为什么gettype (无论如何都不应该使用它)返回"double“而不是"float”。答案是http://de2.php.net/manual/en/function.gettype.php

" double“(由于历史原因,如果是浮点型,则返回”double“,而不仅仅是" float ")

票数 22
EN

Stack Overflow用户

发布于 2017-01-14 20:39:54

从Windows上的PHP7.0.6开始,比较没有xdebug的命令

代码语言:javascript
复制
$ php -r 'var_dump(28.4);'
float(28.4)

和带有xdebug的

代码语言:javascript
复制
$ php -r 'var_dump(28.4);'
Command line code:1:
double(28.4)

请注意,这只会更改var_dump()输出,而不会更改实际的内存管理。

这可能解决了一些问题,为什么您在其他一些计算机上看到var_dump中显示的是double而不是float

而且,不管有没有xdebug,gettype都会返回string(6) "double"

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3280892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档