PHPKonf Istanbul PHP Conference 2019 - Call for Papers

定義済み定数

Math の定数

`M_PI` 3.14159265358979323846 パイ（円周率）
`M_E` 2.7182818284590452354 e（自然対数の底）
`M_LOG2E` 1.4426950408889634074 log_2 e
`M_LOG10E` 0.43429448190325182765 log_10 e
`M_LN2` 0.69314718055994530942 log_e 2
`M_LN10` 2.30258509299404568402 log_e 10
`M_PI_2` 1.57079632679489661923 pi/2
`M_PI_4` 0.78539816339744830962 pi/4
`M_1_PI` 0.31830988618379067154 1/pi
`M_2_PI` 0.63661977236758134308 2/pi
`M_SQRTPI` 1.77245385090551602729 sqrt(pi) PHP 5.2.0
`M_2_SQRTPI` 1.12837916709551257390 2/sqrt(pi)
`M_SQRT2` 1.41421356237309504880 sqrt(2)
`M_SQRT3` 1.73205080756887729352 sqrt(3) PHP 5.2.0
`M_SQRT1_2` 0.70710678118654752440 1/sqrt(2)
`M_LNPI` 1.14472988584940017414 log_e(pi) PHP 5.2.0
`M_EULER` 0.57721566490153286061 オイラー定数 PHP 5.2.0
`PHP_ROUND_HALF_UP` 1 端数を切り上げる PHP 5.3.0
`PHP_ROUND_HALF_DOWN` 2 端数を切り捨てる PHP 5.3.0
`PHP_ROUND_HALF_EVEN` 3 端数を偶数に丸める PHP 5.3.0
`PHP_ROUND_HALF_ODD` 4 端数を奇数に丸める PHP 5.3.0
`NAN` NAN (float) 非数値
`INF` INF (float) 無限

PHP のバージョンが明記されていない定数は、すべて PHP 5.0.0 以降で使用可能です。

User Contributed Notes 5 notes

18
md2perpe at gmail dot com
3 years ago
``` I just learnt of INF today and found out that it can be used in comparisons:    echo 5000 < INF ? 'yes' : 'no';       // outputs 'yes'    echo INF < INF ? 'yes' : 'no';        // outputs 'no'    echo INF <= INF ? 'yes' : 'no';       // outputs 'yes'    echo INF == INF ? 'yes' : 'no';       // outputs 'yes'You can also take its negative:    echo -INF < -5000 ? 'yes' : 'no';    // outputs 'yes'Division by INF is allowed:    echo 1/INF;    // outputs '0' ```
11
Hayley Watson
6 years ago
``` There are also the predefined PHP_INT_MAX and PHP_INT_SIZE constants, that describe the range of possible integer values. ```
Hayley Watson
1 year ago
``` From PHP 7.2.0, the PHP_FLOAT_* constants are provided to describe the properties of floating point numbers that can be stored; PHP_FLOAT_MAX, for example, is analogous to PHP_INT_MAX and represents the largest possible floating-point number. ```
pemapmodder1970 at gmail dot com
2 years ago
``` Although INF can be used for comparison against normal numbers and as a directed number, and behaves as reciprocal of zero, it is not like limit INF tends to infinity. These operations do not work:<?phpvar_dump(INF / INF); // float(NAN)var_dump(INF - INF); // float(NAN)?>However, it works with arc-tangent:<?phpvar_dump(atan(INF) / M_PI); // float(0.5)var_dump(atan2(INF, INF) / M_PI); // float(0.25)var_dump(atan2(1, INF) / M_PI); // float(0)?> ```
-1
steve at websmithery dot co dot uk
1 year ago
``` Another observation on INF.Division by zero results in INF:<?phpvar_dump(1/0); // float(INF)?>BUT a 'Division by zero' warning is issued. ```