1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #ifndef PHP_MATH_H
23 #define PHP_MATH_H
24
25 PHPAPI char *_php_math_number_format(double, int, char, char);
26 PHPAPI char *_php_math_number_format_ex(double, int, char *, size_t, char *, size_t);
27 PHPAPI char * _php_math_longtobase(zval *arg, int base);
28 PHPAPI long _php_math_basetolong(zval *arg, int base);
29 PHPAPI int _php_math_basetozval(zval *arg, int base, zval *ret);
30 PHPAPI char * _php_math_zvaltobase(zval *arg, int base TSRMLS_DC);
31
32 PHP_FUNCTION(sin);
33 PHP_FUNCTION(cos);
34 PHP_FUNCTION(tan);
35 PHP_FUNCTION(asin);
36 PHP_FUNCTION(acos);
37 PHP_FUNCTION(atan);
38 PHP_FUNCTION(atan2);
39 PHP_FUNCTION(pi);
40 PHP_FUNCTION(exp);
41 PHP_FUNCTION(log);
42 PHP_FUNCTION(log10);
43 PHP_FUNCTION(is_finite);
44 PHP_FUNCTION(is_infinite);
45 PHP_FUNCTION(is_nan);
46 PHP_FUNCTION(pow);
47 PHP_FUNCTION(sqrt);
48 PHP_FUNCTION(srand);
49 PHP_FUNCTION(rand);
50 PHP_FUNCTION(getrandmax);
51 PHP_FUNCTION(mt_srand);
52 PHP_FUNCTION(mt_rand);
53 PHP_FUNCTION(mt_getrandmax);
54 PHP_FUNCTION(abs);
55 PHP_FUNCTION(ceil);
56 PHP_FUNCTION(floor);
57 PHP_FUNCTION(round);
58 PHP_FUNCTION(decbin);
59 PHP_FUNCTION(dechex);
60 PHP_FUNCTION(decoct);
61 PHP_FUNCTION(bindec);
62 PHP_FUNCTION(hexdec);
63 PHP_FUNCTION(octdec);
64 PHP_FUNCTION(base_convert);
65 PHP_FUNCTION(number_format);
66 PHP_FUNCTION(fmod);
67 PHP_FUNCTION(deg2rad);
68 PHP_FUNCTION(rad2deg);
69
70
71
72
73
74 PHP_FUNCTION(hypot);
75 PHP_FUNCTION(expm1);
76 PHP_FUNCTION(log1p);
77
78 PHP_FUNCTION(sinh);
79 PHP_FUNCTION(cosh);
80 PHP_FUNCTION(tanh);
81
82 PHP_FUNCTION(asinh);
83 PHP_FUNCTION(acosh);
84 PHP_FUNCTION(atanh);
85
86 #include <math.h>
87
88 #ifndef M_E
89 #define M_E 2.7182818284590452354
90 #endif
91
92 #ifndef M_LOG2E
93 #define M_LOG2E 1.4426950408889634074
94 #endif
95
96 #ifndef M_LOG10E
97 #define M_LOG10E 0.43429448190325182765
98 #endif
99
100 #ifndef M_LN2
101 #define M_LN2 0.69314718055994530942
102 #endif
103
104 #ifndef M_LN10
105 #define M_LN10 2.30258509299404568402
106 #endif
107
108 #ifndef M_PI
109 #define M_PI 3.14159265358979323846
110 #endif
111
112 #ifndef M_PI_2
113 #define M_PI_2 1.57079632679489661923
114 #endif
115
116 #ifndef M_PI_4
117 #define M_PI_4 0.78539816339744830962
118 #endif
119
120 #ifndef M_1_PI
121 #define M_1_PI 0.31830988618379067154
122 #endif
123
124 #ifndef M_2_PI
125 #define M_2_PI 0.63661977236758134308
126 #endif
127
128 #ifndef M_SQRTPI
129 #define M_SQRTPI 1.77245385090551602729
130 #endif
131
132 #ifndef M_2_SQRTPI
133 #define M_2_SQRTPI 1.12837916709551257390
134 #endif
135
136 #ifndef M_LNPI
137 #define M_LNPI 1.14472988584940017414
138 #endif
139
140 #ifndef M_EULER
141 #define M_EULER 0.57721566490153286061
142 #endif
143
144 #ifndef M_SQRT2
145 #define M_SQRT2 1.41421356237309504880
146 #endif
147
148 #ifndef M_SQRT1_2
149 #define M_SQRT1_2 0.70710678118654752440
150 #endif
151
152 #ifndef M_SQRT3
153 #define M_SQRT3 1.73205080756887729352
154 #endif
155
156
157 #ifndef PHP_ROUND_HALF_UP
158 #define PHP_ROUND_HALF_UP 0x01
159 #endif
160
161 #ifndef PHP_ROUND_HALF_DOWN
162 #define PHP_ROUND_HALF_DOWN 0x02
163 #endif
164
165 #ifndef PHP_ROUND_HALF_EVEN
166 #define PHP_ROUND_HALF_EVEN 0x03
167 #endif
168
169 #ifndef PHP_ROUND_HALF_ODD
170 #define PHP_ROUND_HALF_ODD 0x04
171 #endif
172
173 #endif