From: Hartmut Holzgraefe Date: Sat, 8 Apr 2000 23:53:19 +0000 (+0000) Subject: added the other usefull constants besides M_PI from math.h X-Git-Tag: php-4.0RC2~433 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=744fe82e0a1e1b6858262d42dd89cffc48d51816;p=php added the other usefull constants besides M_PI from math.h as PHP constants --- diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 97e3d2942c..46478cef21 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -23,6 +23,7 @@ #include "php_ini.h" #include "internal_functions_registry.h" #include "php_standard.h" +#include "phpmath.h" #include "ext/standard/info.h" #include "zend_operators.h" #include @@ -568,9 +569,6 @@ static void php_putenv_destructor(putenv_entry *pe) } #endif -#ifndef M_PI -#define M_PI 3.14159265358979323846 -#endif void test_class_startup(void); @@ -599,8 +597,22 @@ PHP_MINIT_FUNCTION(basic) basic_globals_ctor(BLS_C); #endif - REGISTER_DOUBLE_CONSTANT("M_PI", M_PI, CONST_CS | CONST_PERSISTENT); - +#define REGISTER_MATH_CONSTANT(x) REGISTER_DOUBLE_CONSTANT(#x, x, CONST_CS | CONST_PERSISTENT) + REGISTER_MATH_CONSTANT(M_E); + REGISTER_MATH_CONSTANT(M_LOG2E); + REGISTER_MATH_CONSTANT(M_LOG10E); + REGISTER_MATH_CONSTANT(M_LN2); + REGISTER_MATH_CONSTANT(M_LN10); + REGISTER_MATH_CONSTANT(M_PI); + REGISTER_MATH_CONSTANT(M_PI_2); + REGISTER_MATH_CONSTANT(M_PI_4); + REGISTER_MATH_CONSTANT(M_1_PI); + REGISTER_MATH_CONSTANT(M_2_PI); + REGISTER_MATH_CONSTANT(M_2_SQRTPI); + REGISTER_MATH_CONSTANT(M_SQRT2); + REGISTER_MATH_CONSTANT(M_SQRT1_2); + + test_class_startup(); REGISTER_INI_ENTRIES(); diff --git a/ext/standard/math.c b/ext/standard/math.c index b5ecf38fd9..fbc457abb4 100644 --- a/ext/standard/math.c +++ b/ext/standard/math.c @@ -30,6 +30,7 @@ #define M_PI 3.14159265358979323846 #endif + char *_php_math_number_format(double, int, char ,char); /* {{{ proto int abs(int number) diff --git a/ext/standard/phpmath.h b/ext/standard/phpmath.h index f9d56abd5b..77ee5363df 100644 --- a/ext/standard/phpmath.h +++ b/ext/standard/phpmath.h @@ -67,4 +67,57 @@ PHP_FUNCTION(number_format); PHP_FUNCTION(deg2rad); PHP_FUNCTION(rad2deg); + +#ifndef M_E +#define M_E 2.7182818284590452354 /* e */ +#endif + +#ifndef M_LOG2E +#define M_LOG2E 1.4426950408889634074 /* log_2 e */ +#endif + +#ifndef M_LOG10E +#define M_LOG10E 0.43429448190325182765 /* log_10 e */ +#endif + +#ifndef M_LN2 +#define M_LN2 0.69314718055994530942 /* log_e 2 */ +#endif + +#ifndef M_LN10 +#define M_LN10 2.30258509299404568402 /* log_e 10 */ +#endif + +#ifndef M_PI +#define M_PI 3.14159265358979323846 /* pi */ +#endif + +#ifndef M_PI_2 +#define M_PI_2 1.57079632679489661923 /* pi/2 */ +#endif + +#ifndef M_PI_4 +#define M_PI_4 0.78539816339744830962 /* pi/4 */ +#endif + +#ifndef M_1_PI +#define M_1_PI 0.31830988618379067154 /* 1/pi */ +#endif + +#ifndef M_2_PI +#define M_2_PI 0.63661977236758134308 /* 2/pi */ +#endif + +#ifndef M_2_SQRTPI +#define M_2_SQRTPI 1.12837916709551257390 /* 2/sqrt(pi) */ +#endif + +#ifndef M_SQRT2 +#define M_SQRT2 1.41421356237309504880 /* sqrt(2) */ +#endif + +#ifndef M_SQRT1_2 +#define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ +#endif + #endif /* _PHPMATH_H */