Float

suggest change
$float = 0.123;
For historical reasons “double” is returned by gettype() in case of a float, and not simply “float”

Floats are floating point numbers, which allow more output precision than plain integers.

Floats and integers can be used together due to PHP’s loose casting of variable types:

$sum = 3 + 0.14;

echo $sum; // 3.14

php does not show float as float number like other languages, for example:

$var = 1;
echo ((float) $var); //returns 1 not 1.0

Warning

Floating point precision

(From the PHP manual page)

Floating point numbers have limited precision. Although it depends on the system, PHP typically give a maximum relative error due to rounding in the order of 1.11e-16. Non elementary arithmetic operations may give larger errors, and error propagation must be considered when several operations are compounded.
Additionally, rational numbers that are exactly representable as floating point numbers in base 10, like 0.1 or 0.7, do not have an exact representation as floating point numbers in base 2 (binary), which is used internally, no matter the size of the mantissa. Hence, they cannot be converted into their internal binary counterparts without a small loss of precision. This can lead to confusing results: for example, floor((0.1+0.7)*10) will usually return 7 instead of the expected 8, since the internal representation will be something like 7.9999999999999991118….
So never trust floating number results to the last digit, and do not compare floating point numbers directly for equality. If higher precision is necessary, the arbitrary precision math functions and gmp functions are available.

Feedback about page:

Feedback:
Optional: your email if you want me to get back to you:


Types:
* Types
* Float
* Null

Table Of Contents
2 Arrays
4 Types
10 Cookies
14 JSON
15 SOAP
17 cURL
19 XML
21 Traits
35 UTF-8
36 URLs
38 PHPDoc
41 Loops
44 Closur
72 YAML
77 Cache
78 Streams
81 PDO
82 SQLite3
83 Sockets
87 MongoDB
93 IMAP
94 Redis
95 Imagick
102 APCu
108 PSR