PHP float

Summary: in this tutorial, you’ll learn about floating-point numbers or floats in PHP.

Introduction to the PHP float

Floating-point numbers represent numeric values with decimal digits.

Floating-point numbers are often referred to as floats, doubles, or real numbers. Like integers, the range of the floats depends on the platform where PHP runs.

PHP recognizes floating-point numbers in the following common formats:

1.25
3.14
-0.1Code language: CSS (css)

PHP also supports the floating-point numbers in scientific notation:

0.125E1 // 0.125 * 10^1 or 1.25Code language: JSON / JSON with Comments (json)

Since PHP 7.4, you can use the underscores in floats to make long numbers more readable. For example:

1_234_457.89Code language: CSS (css)

Floating-point number accuracy

Since the computer cannot represent exact floating-point numbers, it only can use approximate representations.

For example, the result of 0.1 + 0.1 + 0.1 is 0.299999999…, not 0.3. It means that you must be careful when comparing two floating-point numbers using the == operator.

The following example returns false, which may not what you expected:

<?php

$total = 0.1 + 0.1 + 0.1;
echo $total == 0.3; // return falseCode language: HTML, XML (xml)

Test a float value

To check if a value is a floating-point number, you use the is_float() or is_real() function. The is_float() returns true if its argument is a floating-point number; otherwise, it returns false. For example:

echo is_float(0.5);Code language: CSS (css)

Output:

1

Summary

  • Floating-point numbers are numbers with decimal points. Floating-point numbers are also known as floats.
  • PHP can only represent floats approximately, not precisely.
Did you find this tutorial useful?