PHP数学运算函数大汇总(经典值得收藏)_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
取得绝对值。
语法: mixed abs(mixed number);
返回值: 混合类型资料
函数种类: 数学运算
内容说明: 返回参数 number 的绝对值。若 number 是倍精确浮点数,则返回值也是倍浮点数;其它的类型则返回类型为整数。

Acos
取得反余弦值。
语法: float acos(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 返回参数 arg 的反余弦值 (arc cosine)。
参考: asin() atan()

Asin
取得反正弦值。
语法: float asin(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 返回参数 arg 的反正弦值 (arc sine)。
参考: acos() atan()

Atan
取得反正切值。
语法: float atan(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 返回参数 arg 的反正切值 (arc tangent)。
参考: acos() asin()

Atan2
计算二数的反正切值。
语法: float atan2(float y, float x);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数用来计算二数 y、x 的反正切值,计算结果与 atan() 计算 y/x 类似,但本函数会因 x、y 的正负号影响结果。而本函数的返回值必落在正负的圆周率间 (-PI <= (值) &lg;= PI)
参考 acos() atan() asin()

base_convert
转换数字的进位方式。
语法: string base_convert(string number, int frombase, int tobase);
返回值: 字符串
函数种类: 数学运算
内容说明: 本函数将数字字符串 number 从以 frombase 进位转换到以 tobase 进位。本式能够处理的由以二进位到以三十六进位之间的进位方式。在十进位之前都是以数字表示,而在超过十进位之后就用英文字母表示。例如十六进位个位数依序为 123456789abcdef,10 的顺序是第十七个,这时才进一位。而三十六进位 a 是第十个、b 为第十一个、z 为第三十六个、10 是第三十七个,这时才进位。

使用范例

本例将十六进位字符串转成二进位字符串

<?php
$binary = base_convert($hexadecimal, 16, 2);
echo "十六进位字符串"$hexadecimal"转成二进位为"$binary"。";
?>

BinDec
二进位转成十进位。
语法: int bindec(string binary_string);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数将二进位数字字符串转成十进位的整数。由于 PHP 使用 32 位有正负号整数计算,能处理的最大十进位数字为 2147483647,也就是二进位数字的 1111111111111111111111111111111 (31 个 1)。
参考: DecBin()

Ceil
计算大于指定数的最小整数。
语法: int ceil(float number);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数用来计算比浮点参数 number 大的最小整数。

使用范例

本例返回值为 4。

<?php
$nextint=ceil(3.14);
echo $nextint;
?> 

参考: Floor() round()

Cos
余弦计算。
语法: float cos(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算参数 arg 的余弦值 (cosine)。
参考: Sin() Tan()

DecBin
十进位转二进位。
语法: string decbin(int number);
返回值: 字符串
函数种类: 数学运算
内容说明: 本函数将十进位数字转成二进位字符串。由于 PHP 使用 32 位有正负号整数计算,能处理的最大十进位数字为 2147483647,也就是二进位数字的 1111111111111111111111111111111 (31 个 1)。
参考: BinDec()

DecHex
十进位转十六进位。
语法: string dechex(int number);
返回值: 字符串
函数种类: 数学运算
内容说明: 本函数将十进位数字转成十六进位字符串。由于 PHP 使用 32 位有正负号整数计算,能处理的最大十进位数字为 2147483647,也就是十六进位数字 7fffffff。
参考: HexDec()

DecOct
十进位转八进位。
语法: string decoct(int number);
返回值: 字符串
函数种类: 数学运算
内容说明: 本函数将十进位数字转成八进位字符串。由于 PHP 使用 32 位有正负号整数计算,能处理的最大十进位数字为 2147483647,也就是八进位数字 17777777777。
参考: OctDec()

Exp
自然对数 e 的次方值。
语法: float exp(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算自然对数 (natural logarithm) 的 arg 次方值。
参考: pow() Log()

Floor
计算小于指定数的最大整数。
语法: int floor(float number);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数用来计算比浮点参数 number 小的最大整数。

使用范例

本例返回值为 3。

<?php
$lastint=floor(3.14);
echo $lastint;
?> 

参考: Ceil() round()

getrandmax
乱数的最大值。
语法: int getrandmax(void);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数计算乱数函数 rand() 可能取得的取得的最大乱数值。本函数不需参数。
参考: rand() srand() mt_rand() mt_srand() mt_getrandmax()

HexDec
十六进位转十进位。
语法: int hexdec(string hex_string);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数将十六进位字符串转成十进位数字。由于 PHP 使用 32 位有正负号整数计算,能处理的最大十六进位数字为 7fffffff,也就是十进位数字的 2147483647。
参考: DecHex()

Log
自然对数值。
语法: float log(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算参数 arg 的自然对数 (natural logarithm) 值。

Log10
10 基底的对数值。
语法: float log10(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算参数 arg 的 10 基底对数值。

max
取得最大值。
语法: mixed max(mixed arg1, mixed arg2 .... mixed argn);
返回值: 混合类型资料
函数种类: 数学运算
内容说明: 本函数计算参数间的最大值。若第一个参数是数字数组,则会找出该数组的最大数字。若第一个参数非数组,则需二个以上的参数。这些数字可以是整数、倍精确数或数字字符串的类型。参数的数目不限,视用户的需求而定。在计算时,只要有一个参数是倍精确数,本函数会将所有的参数都转成倍精确数,并返回倍精确数。若参数只有整数及数字字符串,则会将所有的参数转换成整数,并返回整数。
参考: min()

min
取得最小值。
语法: mixed min(mixed arg1, mixed arg2 .... mixed argn);
返回值: 混合类型资料
函数种类: 数学运算
内容说明: 本函数计算参数间的最小值。若第一个参数是数字数组,则会找出该数组的最小数字。若第一个参数非数组,则需二个以上的参数。这些数字可以是整数、倍精确数或数字字符串的类型。参数的数目不限,视用户的需求而定。在计算时,只要有一个参数是倍精确数,本函数会将所有的参数都转成倍精确数,并返回倍精确数。若参数只有整数及数字字符串,则会将所有的参数转换成整数,并返回整数。
参考: max()

mt_rand
取得乱数值。
语法: int mt_rand([int min], [int max]);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数不使用一般常用的 libc 来计算乱数值,而是使用计算速度至少快四倍的马其赛特旋转 (Mersenne Twister) 演算法来计算乱数值。有关马特赛特旋转演算法可在松本真的 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
配置乱数种子。
语法: void mt_srand(int seed);
返回值: 无
函数种类: 数学运算
内容说明: 本函数传入参数 seed 后,配置乱数的种子。值得注意的是参数 seed 值最好也是随机出现的数字,例如利用加入时间做为变量的来源就是不错的方法,或者开发其它的硬体周边界面可取得更好的乱数。

使用范例

本例加入时间的因素,以执行时的百万分之一秒当乱数种子

<?php
mt_srand((double)microtime()*1000000);
$randval = mt_rand();
echo $randval;
?> 

参考: rand() srand() getrandmax() mt_rand() mt_getrandmax()

mt_getrandmax
乱数的最大值。
语法: int mt_getrandmax(void);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数计算乱数函数 mt_rand() 可能取得的取得的最大乱数值。本函数不需参数。
参考: rand() srand() getrandmax() mt_srand() mt_rand()

number_format
格式化数字字符串。
语法: string number_format(float number, 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"; // 850 017.902
?>

OctDec
八进位转十进位。
语法: string decoct(int number);
返回值: 字符串
函数种类: 数学运算
内容说明: 本函数将八进位字符串转成十进位数字。由于 PHP 使用 32 位有正负号整数计算,能处理最大的八进位数字为 17777777777,也就是十进位数字的 2147483647。
参考: DecOct()

pi
圆周率。
语法: double pi(void);
返回值: 倍精确数
函数种类: 数学运算
内容说明: 本函数返回圆周率。不需输入参数。

pow
次方。
语法: float pow(float base, float exp);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算次方值。参数 base 为基底,exp 为幂数。

使用范例

<?php
print(pow(2,3)); // 8
print(pow(5,4)); // 625
?> 

参考: Log10() Exp()

rand
取得随机数值。
语法: int rand([int min], [int max]);
返回值: 整数
函数种类: 数学运算
内容说明: 本函数用来取得随机数值。若没有指定随机数的最大及最小范围,本函数会自动的从 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
四舍五入。
语法: double round(double val);
返回值: 倍精确数
函数种类: 数学运算
内容说明: 本函数用来将数字小数点后四舍五入。

使用范例

<?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
正弦计算。
语法: float sin(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算参数 arg 的正弦值 (sine)。
参考: Cos() Tan()

Sqrt
开平方根。
语法: float sqrt(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数将参数 arg 开平方根。

srand
配置随机数种子。
语法: void srand(int seed);
返回值: 无
函数种类: 数学运算
内容说明: 本函数传入参数 seed 后,配置随机数的种子。值得注意的是参数 seed 值最好也是随机出现的数字,例如利用加入时间做为变量的来源就是不错的方法,或者开发其它的硬体周边界面可取得更好的随机数。

使用范例

本例加入时间的因素,以执行时的百万分之一秒当随机数种子

<?php
srand((double)microtime()*1000000);
$randval = rand();
echo $randval;
?> 

参考: rand() getrandmax() mt_srand() mt_rand() mt_getrandmax()

Tan
正切计算。
语法: float tan(float arg);
返回值: 浮点数
函数种类: 数学运算
内容说明: 本函数计算参数 arg 的正切值 (tangent)。
参考: Sin() Cos()

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php
, 函数
数学运算
值得收藏的白酒、值得收藏的老车、哪些白酒值得收藏、哪些人民币值得收藏、值得收藏的好片ed2k,以便于您获取更多的相关知识。

时间: 2024-08-03 21:02:31

PHP数学运算函数大汇总(经典值得收藏)_php技巧的相关文章

PHP常见错误提示含义解释(实用!值得收藏)_php技巧

本文讲述了PHP常见错误提示含义解释.分享给大家供大家参考,具体如下: 在学习PHP的时候,经常遇到各种错误提示,今天看到这错误提示和解释感觉挺好,现转过来,供我们学习.呵呵..... 1.Notice: Undefined variable:  变量名 in 注:使用了一个没有被定义的变量 2.Parse error: syntax error, unexpected T_ELSE in  If () { }Else if () { } Echo $test; Else { } 注:是 if

javascript面向对象程序设计高级特性经典教程(值得收藏)_javascript技巧

本文实例讲述了javascript面向对象程序设计的高级特性.分享给大家供大家参考,具体如下: 1.创建对象的三种方式: 第一种构造法:new  Object var a = new Object(); a.x = 1, a.y = 2; 第二种构造法:对象直接量 var b = { x : 1, y : 2 }; 第三种构造法:定义类型 function Point(x, y){ this.x = x; this.y = y; } var p = new Point(1,2); 2.访问对象

PHP自定义函数实现格式化秒的方法_php技巧

本文实例讲述了PHP自定义函数实现格式化秒的方法.分享给大家供大家参考,具体如下: function vtime($time) { $output = ''; foreach (array(86400 => '天', 3600 => '小时', 60 => '分', 1 => '秒') as $key => $value) { if ($time >= $key) $output .= floor($time/$key) . $value; $time %= $key;

php使用number_format函数截取小数的方法分析_php技巧

本文实例讲述了php使用number_format函数截取小数的方法.分享给大家供大家参考,具体如下: 大家知道用php的number_format()函数可以将数字按千分组. 但是它会使数字四舍五入, 那有没有办法能让它直接舍弃保留位后面的小数而不进行四舍五入呢?各位别急,且听我细细道来,如果你想保留两位小数,可以把你的数字-0.005 例如: 123456.6588 你想要得结果是: 123,456.65 你可以这样: $num=123456.6588; echo number_format

php自定义函数实现二维数组排序功能_php技巧

本文实例讲述了php自定义函数实现二维数组排序功能.分享给大家供大家参考,具体如下: /**作用: 二维数组排序函数,支持多键名排序 * 返回: 排序好的数组 * 使用: array_msort(数组,需要排序的键名,排序方式); * 例子: array_msort($cflist,"chapter_orderid","SORT_ASC"); * array_msort($arr,"name","SORT_ASC","

PHP实现的随机IP函数【国内IP段】_php技巧

本文实例讲述了PHP实现的随机IP函数.分享给大家供大家参考,具体如下: function get_rand_ip(){ $arr_1 = array("218","218","66","66","218","218","60","60","202","204","66","66

php使用file函数、fseek函数读取大文件效率对比分析_php技巧

php读取大文件可以使用file函数和fseek函数,但是二者之间效率可能存在差异,本文章向大家介绍php file函数与fseek函数实现大文件读取效率对比分析,需要的朋友可以参考一下. 1. 直接采用file函数来操作 由于 file函数是一次性将所有内容读入内存,而PHP为了防止一些写的比较糟糕的程序占用太多的内存而导致系统内存不足,使服务器出现宕机,所以默认情况下限制只能最大使用内存16M,这是通过php.ini里的 memory_limit = 16M 来进行设置,这个值如果设置-1,

PHP常用的文件操作函数经典收藏_php技巧

以下是个人总结的PHP文件操作函数.当然,这只是部分,还有很多,我没有列出来. 一 .解析路径: 1 获得文件名: basename(); 给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是以 suffix 结束的,那这一部分也会被去掉. eg: 复制代码 代码如下: $path = "/home/httpd/html/index.php"; $file = basename($path,".php"); // $file is set

PHP全概率运算函数(优化版) Webgame开发必备_php实例

复制代码 代码如下: <?php $setting = array( // 黑色概率 0 => 0.99, // 白色概率 1 => 0.01, ); // Requires the GD Library header("Content-type: image/png"); $im = imagecreatetruecolor(256, 256) or die("Cannot Initialize new GD image stream"); $w