PHP Predefined Mathematical Constants

PHP provides a comprehensive set of predefined mathematical constants that are essential for mathematical calculations. These constants are globally available and provide precise values for common mathematical operations.

Core Mathematical Constants

The most commonly used mathematical constants include pi, Euler's number, and their derivatives ?

<?php
    echo "Pi (M_PI): " . M_PI . "<br>";
    echo "Euler's number (M_E): " . M_E . "<br>";
    echo "Pi/2 (M_PI_2): " . M_PI_2 . "<br>";
    echo "Pi/4 (M_PI_4): " . M_PI_4 . "<br>";
    echo "Square root of 2 (M_SQRT2): " . M_SQRT2 . "<br>";
?>
Pi (M_PI): 3.1415926535898
Euler's number (M_E): 2.718281828459
Pi/2 (M_PI_2): 1.5707963267949
Pi/4 (M_PI_4): 0.78539816339745
Square root of 2 (M_SQRT2): 1.4142135623731

Logarithmic Constants

PHP provides various logarithmic constants for different bases ?

<?php
    echo "log2(e) - M_LOG2E: " . M_LOG2E . "<br>";
    echo "log10(e) - M_LOG10E: " . M_LOG10E . "<br>";
    echo "ln(2) - M_LN2: " . M_LN2 . "<br>";
    echo "ln(10) - M_LN10: " . M_LN10 . "<br>";
    echo "ln(pi) - M_LNPI: " . M_LNPI . "<br>";
?>
log2(e) - M_LOG2E: 1.4426950408889
log10(e) - M_LOG10E: 0.43429448190325
ln(2) - M_LN2: 0.69314718055995
ln(10) - M_LN10: 2.3025850929940
ln(pi) - M_LNPI: 1.1447298858494

Rounding Constants

PHP includes constants for controlling rounding behavior ?

<?php
    $value = 2.5;
    
    echo "Original value: $value<br>";
    echo "Round half up: " . round($value, 0, PHP_ROUND_HALF_UP) . "<br>";
    echo "Round half down: " . round($value, 0, PHP_ROUND_HALF_DOWN) . "<br>";
    echo "Round half even: " . round($value, 0, PHP_ROUND_HALF_EVEN) . "<br>";
    echo "Round half odd: " . round($value, 0, PHP_ROUND_HALF_ODD) . "<br>";
?>
Original value: 2.5
Round half up: 3
Round half down: 2
Round half even: 2
Round half odd: 3

Special Constants

PHP provides constants for special mathematical values ?

<?php
    echo "Not a Number (NAN): " . NAN . "<br>";
    echo "Infinity (INF): " . INF . "<br>";
    echo "Euler constant (M_EULER): " . M_EULER . "<br>";
    
    // Check if value is NaN or infinite
    echo "Is NAN a number? " . (is_nan(NAN) ? "No" : "Yes") . "<br>";
    echo "Is INF finite? " . (is_finite(INF) ? "Yes" : "No") . "<br>";
?>
Not a Number (NAN): NAN
Infinity (INF): INF
Euler constant (M_EULER): 0.57721566490153
Is NAN a number? No
Is INF finite? No

Complete Reference Table

Constant Value Description
M_PI 3.14159265358979 Pi
M_E 2.71828182845905 Euler Number e
M_LOG2E 1.44269504088896 log2 e
M_LOG10E 0.434294481903252 log10 e
M_LN2 0.693147180559945 loge 2
M_LN10 2.30258509299405 loge10
M_PI_2 1.57079632679490 pi/2
M_PI_4 0.785398163397448 pi/4
M_SQRT2 1.41421356237310 sqrt(2)
M_EULER 0.577215664901533 Euler constant
PHP_ROUND_HALF_UP 1 Round halves up
PHP_ROUND_HALF_DOWN 2 Round halves down
NAN NAN Not A Number
INF INF Infinity

Conclusion

PHP's predefined mathematical constants provide accurate values for complex calculations. These constants are essential for trigonometry, logarithms, and precise mathematical operations in scientific applications.

Updated on: 2026-03-15T09:00:04+05:30

261 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements