如何在php中将浮点值转换为整数?

2022-01-09 00:00:00 floating-point int php

我想在php中将浮点值(例如:1.0000124668092E+14)转换为整数,php.output中最好的方法是100001246680920"

I want to convert float value (Eg:1.0000124668092E+14) to Integer in php,what is the best method for this in php.output should be "100001246680920"

推荐答案

转化是什么意思?

  • casting*: (int) $floatintval($float)
  • 截断:floor($float)(向下)或 ceil($float)(向上)
  • 舍入:round($float) - 有额外的模式,请参阅 PHP_ROUND_HALF_... 常量
  • casting*: (int) $float or intval($float)
  • truncating: floor($float) (down) or ceil($float) (up)
  • rounding: round($float) - has additional modes, see PHP_ROUND_HALF_... constants

*:强制转换有一些机会,浮点值不能用 int 表示(太大或太小),f.ex.在你的情况下.

*: casting has some chance, that float values cannot be represented in int (too big, or too small), f.ex. in your case.

PHP_INT_MAX:此 PHP 版本支持的最大整数.通常是 int(2147483647).

PHP_INT_MAX: The largest integer supported in this build of PHP. Usually int(2147483647).

但是,您可以使用 BCMath 或 GMP 用于处理这些大数字的扩展.(两者都是有限制的,你只需要开启这些扩展)

But, you could use the BCMath, or the GMP extensions for handling these large numbers. (Both are boundled, you only need to enable these extensions)

相关文章