PHP数学运算函数大汇总(经典值得收藏)
本文汇总分析了PHP数学运算函数。分享给大家供大家参考,具体如下:
一、常用函数说明:
Abs:取得绝对值。
Acos:取得反余弦值。
Asin:取得反正弦值。
Atan:取得反正切值。
Atan2:计算二数的反正切值。
base_convert:转换数字的进位方式。
BinDec:二进位转成十进位。
Ceil:计算大于指定数的最小整数。
Cos:余弦计算。
DecBin:十进位转二进位。
DecHex:十进位转十六进位。
DecOct:十进位转八进位。
Exp:自然对数e的次方值。
Floor:计算小于指定数的最大整数。
getrandmax:随机数的最大值。
HexDec:十六进位转十进位。
Log:自然对数值。
Log10:10基底的对数值。
max:取得最大值。
min:取得最小值。
mt_rand:取得随机数值。
mt_srand:配置随机数种子。
mt_getrandmax:随机数的最大值。
number_format:格式化数字字符串。
OctDec:八进位转十进位。
pi:圆周率。
pow:次方。
rand:取得随机数值。
round:四舍五入。
Sin:正弦计算。
Sqrt:开平方根。
srand:配置随机数种子。
Tan:正切计算。
二、函数分析如下:
Abs
取得绝对值。
语法:mixedabs(mixednumber);
返回值:混合类型资料
函数种类:数学运算
内容说明:返回参数number的绝对值。若number是倍精确浮点数,则返回值也是倍浮点数;其它的类型则返回类型为整数。
Acos
取得反余弦值。
语法:floatacos(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:返回参数arg的反余弦值(arccosine)。
参考:asin()atan()
Asin
取得反正弦值。
语法:floatasin(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:返回参数arg的反正弦值(arcsine)。
参考:acos()atan()
Atan
取得反正切值。
语法:floatatan(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:返回参数arg的反正切值(arctangent)。
参考:acos()asin()
Atan2
计算二数的反正切值。
语法:floatatan2(floaty,floatx);
返回值:浮点数
函数种类:数学运算
内容说明:本函数用来计算二数y、x的反正切值,计算结果与atan()计算y/x类似,但本函数会因x、y的正负号影响结果。而本函数的返回值必落在正负的圆周率间(-PI<=(值)≶=PI)
参考acos()atan()asin()
base_convert
转换数字的进位方式。
语法:stringbase_convert(stringnumber,intfrombase,inttobase);
返回值:字符串
函数种类:数学运算
内容说明:本函数将数字字符串number从以frombase进位转换到以tobase进位。本式能够处理的由以二进位到以三十六进位之间的进位方式。在十进位之前都是以数字表示,而在超过十进位之后就用英文字母表示。例如十六进位个位数依序为123456789abcdef,10的顺序是第十七个,这时才进一位。而三十六进位a是第十个、b为第十一个、z为第三十六个、10是第三十七个,这时才进位。
使用范例
本例将十六进位字符串转成二进位字符串
<?php $binary=base_convert($hexadecimal,16,2); echo"十六进位字符串"$hexadecimal"转成二进位为"$binary"。"; ?>
BinDec
二进位转成十进位。
语法:intbindec(stringbinary_string);
返回值:整数
函数种类:数学运算
内容说明:本函数将二进位数字字符串转成十进位的整数。由于PHP使用32位有正负号整数计算,能处理的最大十进位数字为2147483647,也就是二进位数字的1111111111111111111111111111111(31个1)。
参考:DecBin()
Ceil
计算大于指定数的最小整数。
语法:intceil(floatnumber);
返回值:整数
函数种类:数学运算
内容说明:本函数用来计算比浮点参数number大的最小整数。
使用范例
本例返回值为4。
<?php $nextint=ceil(3.14); echo$nextint; ?>
参考:Floor()round()
Cos
余弦计算。
语法:floatcos(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算参数arg的余弦值(cosine)。
参考:Sin()Tan()
DecBin
十进位转二进位。
语法:stringdecbin(intnumber);
返回值:字符串
函数种类:数学运算
内容说明:本函数将十进位数字转成二进位字符串。由于PHP使用32位有正负号整数计算,能处理的最大十进位数字为2147483647,也就是二进位数字的1111111111111111111111111111111(31个1)。
参考:BinDec()
DecHex
十进位转十六进位。
语法:stringdechex(intnumber);
返回值:字符串
函数种类:数学运算
内容说明:本函数将十进位数字转成十六进位字符串。由于PHP使用32位有正负号整数计算,能处理的最大十进位数字为2147483647,也就是十六进位数字7fffffff。
参考:HexDec()
DecOct
十进位转八进位。
语法:stringdecoct(intnumber);
返回值:字符串
函数种类:数学运算
内容说明:本函数将十进位数字转成八进位字符串。由于PHP使用32位有正负号整数计算,能处理的最大十进位数字为2147483647,也就是八进位数字17777777777。
参考:OctDec()
Exp
自然对数e的次方值。
语法:floatexp(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算自然对数(naturallogarithm)的arg次方值。
参考:pow()Log()
Floor
计算小于指定数的最大整数。
语法:intfloor(floatnumber);
返回值:整数
函数种类:数学运算
内容说明:本函数用来计算比浮点参数number小的最大整数。
使用范例
本例返回值为3。
<?php $lastint=floor(3.14); echo$lastint; ?>
参考:Ceil()round()
getrandmax
乱数的最大值。
语法:intgetrandmax(void);
返回值:整数
函数种类:数学运算
内容说明:本函数计算乱数函数rand()可能取得的取得的最大乱数值。本函数不需参数。
参考:rand()srand()mt_rand()mt_srand()mt_getrandmax()
HexDec
十六进位转十进位。
语法:inthexdec(stringhex_string);
返回值:整数
函数种类:数学运算
内容说明:本函数将十六进位字符串转成十进位数字。由于PHP使用32位有正负号整数计算,能处理的最大十六进位数字为7fffffff,也就是十进位数字的2147483647。
参考:DecHex()
Log
自然对数值。
语法:floatlog(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算参数arg的自然对数(naturallogarithm)值。
Log10
10基底的对数值。
语法:floatlog10(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算参数arg的10基底对数值。
max
取得最大值。
语法:mixedmax(mixedarg1,mixedarg2....mixedargn);
返回值:混合类型资料
函数种类:数学运算
内容说明:本函数计算参数间的最大值。若第一个参数是数字数组,则会找出该数组的最大数字。若第一个参数非数组,则需二个以上的参数。这些数字可以是整数、倍精确数或数字字符串的类型。参数的数目不限,视用户的需求而定。在计算时,只要有一个参数是倍精确数,本函数会将所有的参数都转成倍精确数,并返回倍精确数。若参数只有整数及数字字符串,则会将所有的参数转换成整数,并返回整数。
参考:min()
min
取得最小值。
语法:mixedmin(mixedarg1,mixedarg2....mixedargn);
返回值:混合类型资料
函数种类:数学运算
内容说明:本函数计算参数间的最小值。若第一个参数是数字数组,则会找出该数组的最小数字。若第一个参数非数组,则需二个以上的参数。这些数字可以是整数、倍精确数或数字字符串的类型。参数的数目不限,视用户的需求而定。在计算时,只要有一个参数是倍精确数,本函数会将所有的参数都转成倍精确数,并返回倍精确数。若参数只有整数及数字字符串,则会将所有的参数转换成整数,并返回整数。
参考:max()
mt_rand
取得乱数值。
语法:intmt_rand([intmin],[intmax]);
返回值:整数
函数种类:数学运算
内容说明:本函数不使用一般常用的libc来计算乱数值,而是使用计算速度至少快四倍的马其赛特旋转(MersenneTwister)演算法来计算乱数值。有关马特赛特旋转演算法可在松本真的http://www.math.keio.ac.jp/~matumoto/emt.html找到更多的相关信息,最佳化的原始程序则在http://www.scp.syr.edu/~marc/hawk/twister.html。若没有指定乱数的最大及最小范围,本函数会自动的从0到RAND_MAX中取一个乱数。若有指定min及max的参数,则从指定参数中取一个数字,例如mt_rand(38,49)则会从38到49之间取一个乱数值。值得注意的是为使乱数的乱度最大,每次在取乱数之前最好使用mt_srand()以配置新的乱数种子。
参考:rand()srand()getrandmax()mt_srand()mt_getrandmax()
mt_srand
配置乱数种子。
语法:voidmt_srand(intseed);
返回值:无
函数种类:数学运算
内容说明:本函数传入参数seed后,配置乱数的种子。值得注意的是参数seed值最好也是随机出现的数字,例如利用加入时间做为变量的来源就是不错的方法,或者开发其它的硬体周边界面可取得更好的乱数。
使用范例
本例加入时间的因素,以执行时的百万分之一秒当乱数种子
<?php mt_srand((double)microtime()*1000000); $randval=mt_rand(); echo$randval; ?>
参考:rand()srand()getrandmax()mt_rand()mt_getrandmax()
mt_getrandmax
乱数的最大值。
语法:intmt_getrandmax(void);
返回值:整数
函数种类:数学运算
内容说明:本函数计算乱数函数mt_rand()可能取得的取得的最大乱数值。本函数不需参数。
参考:rand()srand()getrandmax()mt_srand()mt_rand()
number_format
格式化数字字符串。
语法:stringnumber_format(floatnumber,int[decimals],string[dec_point],string[thousands_sep]);
返回值:字符串
函数种类:数学运算
内容说明:本函数用来将浮点参数number格式化。若没加参数decimals则返回的字符串只要整数部份,加了此参数才依参数指定的小数点位数返回。参数dec_point表示小数点的表示方式方法,默认值是".",若需要转换成其它的小数点就可以在这个参数改掉。参数thousands_sep为整数部份每三位的分隔符号,默认值是","。本函数最特别的地方就是参数数目,最少要有一个,也就是欲格式化的字符串;也可以有二个或者四个参数,但不能用三个参数。值得注意的是指定小数点的位数之后的数字直接舍弃,没有四舍五入的情形。
使用范例
<?php $short_pi="3.14159"; $my_pi=number_format($short_pi,2); echo$my_pi."n";//3.14 $foo=850017.9021; $new_foo=number_format($foo,3,".",""); echo$new_foo."n";//850017.902 ?>
OctDec
八进位转十进位。
语法:stringdecoct(intnumber);
返回值:字符串
函数种类:数学运算
内容说明:本函数将八进位字符串转成十进位数字。由于PHP使用32位有正负号整数计算,能处理最大的八进位数字为17777777777,也就是十进位数字的2147483647。
参考:DecOct()
pi
圆周率。
语法:doublepi(void);
返回值:倍精确数
函数种类:数学运算
内容说明:本函数返回圆周率。不需输入参数。
pow
次方。
语法:floatpow(floatbase,floatexp);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算次方值。参数base为基底,exp为幂数。
使用范例
<?php print(pow(2,3));//8 print(pow(5,4));//625 ?>
参考:Log10()Exp()
rand
取得随机数值。
语法:intrand([intmin],[intmax]);
返回值:整数
函数种类:数学运算
内容说明:本函数用来取得随机数值。若没有指定随机数的最大及最小范围,本函数会自动的从0到RAND_MAX中取一个随机数。若有指定min及max的参数,则从指定参数中取一个数字。例如rand(38,49)则会从38到49之间取一个随机数值,UNIX系统包含49、Win32系统不包含49([email=zkimmel@earthlink.net]zkimmel@earthlink.net[/email]10-May-1999)。值得注意的是为使随机数的乱度最大,每次在取随机数之前最好使用srand()以配置新的随机数种子。
参考:srand()getrandmax()mt_rand()mt_srand()mt_getrandmax()
round
四舍五入。
语法:doubleround(doubleval);
返回值:倍精确数
函数种类:数学运算
内容说明:本函数用来将数字小数点后四舍五入。
使用范例
<?php $foo1=round(3.4); $foo2=round(3.5); $foo3=round(3.6); echo"round(3.4):".$foo1."<br>n"; echo"round(3.5):".$foo2."<br>n"; echo"round(3.6):".$foo3; ?>
参考:Ceil()Floor()
Sin
正弦计算。
语法:floatsin(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算参数arg的正弦值(sine)。
参考:Cos()Tan()
Sqrt
开平方根。
语法:floatsqrt(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数将参数arg开平方根。
srand
配置随机数种子。
语法:voidsrand(intseed);
返回值:无
函数种类:数学运算
内容说明:本函数传入参数seed后,配置随机数的种子。值得注意的是参数seed值最好也是随机出现的数字,例如利用加入时间做为变量的来源就是不错的方法,或者开发其它的硬体周边界面可取得更好的随机数。
使用范例
本例加入时间的因素,以执行时的百万分之一秒当随机数种子
<?php srand((double)microtime()*1000000); $randval=rand(); echo$randval; ?>
参考:rand()getrandmax()mt_srand()mt_rand()mt_getrandmax()
Tan
正切计算。
语法:floattan(floatarg);
返回值:浮点数
函数种类:数学运算
内容说明:本函数计算参数arg的正切值(tangent)。
参考:Sin()Cos()
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。