PHP数学函数整理总结

文章作者:中山市飞娥软件工作室「Feiesoft.com」  浏览次数:2855 次  更新日期:2014-04-19

PHP数学函数一般比较耗时的,因此在实际的项目当中涉及数学运算(包括算术运算)尽量使用PHP系统自带的内部函数。

string decbin ( int $dec ) — 十进制转换为二进制
string decoct ( int $dec ) — 十进制转换为八进制
string dechex ( int $dec ) — 十进制转换为十六进制
number bindec ( string $bin ) — 二进制转换为十进制
number octdec ( string $oct ) — 八进制转换为十进制
number hexdec ( string $hex ) — 十六进制转换为十进制
string base_convert ( string $str , int $frombase , int $tobase ) — 在任意进制之间转换数字

bool is_nan ( float $x ) — 判断是否为合法数值
bool is_finite ( float $x ) — 判断是否为有限值
bool is_infinite ( float $x ) — 判断是否为无限值

mixed max ( array $arr )
mixed max ( mixed $x , mixed $y [, mixed $... ] ) — 找出最大值
mixed min ( array $arr )
mixed min ( mixed $x , mixed $y [, mixed $... ] ) — 找出最小值

int getrandmax ( void ) — 显示随机数最大的可能值
int mt_getrandmax ( void ) — 显示随机数的最大可能值
int mt_rand ( void )
 
int mt_rand ( int $min , int $max ) — 生成更好的随机数
int rand ( void )
int rand ( int $min , int $max ) — 产生一个随机整数
float lcg_value ( void ) — 组合线性同余发生器

number abs ( mixed $x ) — 绝对值

float floor ( float $x ) — 舍去取整
float round ( float $x [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] ) — 四舍五入
float ceil ( float $x ) — 进一取整

float fmod ( float $x , float $y ) — 返回除法的浮点数余数

// 指数函数

float sqrt ( float $x ) — 平方根
number pow ( number $base , number $exp ) — 指数表达式
float exp ( float $x ) — 计算 e 的指数
float expm1 ( float $x ) — 返回 exp(x) - 1,当 x 的值接近零也能计算出准确结果(>=PHP 5.3.0)

// 对数函数

float log ( float $x [, float $base = M_E ] ) — 自然对数
float log10 ( float $x ) — 以 10 为底的对数
float log1p ( float $x ) — 返回 log(1 + x),当 x 的值接近零也能计算出准确结果(>=PHP 5.3.0)

// 三角函数

float pi ( void ) — 圆周率
float deg2rad ( float $x ) — 角度转换弧度
float rad2deg ( float $x ) — 弧度转换角度
float hypot ( float $x , float $y ) — 直角三角形的斜边长度(=sqrt($x * $x + $y * $y))

float sin ( float $x ) — 正弦
float cos ( float $x ) — 余弦
float tan ( float $x ) — 正切

float asin ( float $x ) — 反正弦
float acos ( float $x ) — 反余弦
float atan ( float $x ) — 反正切
float atan2 ( float $y , float $x ) — 两个参数的反正切

float sinh ( float $x ) — 双曲正弦 = (exp($x) - exp(-$x))/2
float cosh ( float $x ) — 双曲余弦 = (exp($x) + exp(-$x))/2
float tanh ( float $x ) — 双曲正切 = sinh($x) / cosh($x) = (exp($x)-exp(-$x)) / (exp($x)+exp(-$x))

float acosh ( float $x ) — 反双曲余弦
float asinh ( float $x ) — 反双曲正弦
float atanh ( float $x ) — 反双曲正切