>  기사  >  백엔드 개발  >  PHP 수학 연산 함수의 함수 및 예제 분석

PHP 수학 연산 함수의 함수 및 예제 분석

墨辰丷
墨辰丷원래의
2018-06-04 10:50:472042검색

이 글은 주로 PHP 수학연산 함수를 소개하고, 일반적인 PHP 수학연산 함수의 기능, 사용방법, 주의사항 등을 정리 분석한 글입니다. 도움이 필요한 친구들은 참고하세요

1 자주 사용하는 함수 설명:

Abs : 절대값을 구합니다.

Acos: 아크코사인 값을 구합니다.

Asin: 아크사인 값을 구합니다.

Atan: 아크탄젠트 값을 구합니다.

Atan2: 두 숫자의 아크탄젠트를 계산합니다.

base_convert: 숫자 변환을 위한 캐리 방법입니다.

BinDec: 이진수를 십진수로 변환합니다.

Ceil: 지정된 숫자보다 큰 가장 작은 정수를 계산합니다.

Cos: 코사인 계산.

DecBin: 10진수를 2진수로 변환합니다.

DecHex: 10진수를 16진수로 변환합니다.

DecOct: 10진수를 8진수로 변환합니다.

Exp: 자연로그의 거듭제곱 e.

Floor: 지정된 숫자보다 작은 가장 큰 정수를 계산합니다.

getrandmax: 난수의 최대값.

HexDec: 16진수를 10진수로 변환합니다.

로그: 자연 로그 값.

Log10: 10 베이스의 로그 값입니다.

max: 최대값을 구합니다.

min: 최소값을 구합니다.

mt_rand: 임의의 값을 가져옵니다.

mt_srand: 난수 시드를 구성합니다.

mt_getrandmax: 난수의 최대값.

number_format: 형식 번호 문자열입니다.

OctDec: 8진수를 10진수로 변환합니다.

pi: 파이.

파우: 힘.

rand: 임의의 값을 가져옵니다.

round: 반올림.

Sin: 사인 계산.

Sqrt: 제곱근.

srand: 난수 시드를 구성합니다.

Tan: 탄젠트 계산.

2. 함수 분석은 다음과 같습니다.

Abs
절댓값을 구합니다.
구문: 혼합 절대값(혼합수);
반환값: 혼합형 데이터
함수 유형: 수학적 연산
내용 설명: 매개변수 번호의 절대값을 반환합니다. number가 다중 정밀도 부동 소수점 숫자인 경우 반환 값은 다른 유형의 다중 정밀도 부동 소수점 숫자이기도 하며 반환 유형은 정수입니다.

Acos
아크코사인 값을 구하세요.
구문: float acos(float arg);
반환 값: 부동 소수점 수
함수 유형: 수학 연산
내용 설명: 매개변수 arg의 역코사인 값(아크코사인)을 반환합니다.
참조: asin() atan()

Asin
아크사인 값을 가져옵니다.
구문: float asin(float arg);
반환 값: 부동 소수점 수
함수 유형: 수학 연산
내용 설명: 매개변수 arg의 역사인 값(arc sine)을 반환합니다.
참조: acos() atan()

Atan
아크탄젠트 값을 구합니다.
구문: float atan(float arg);
반환 값: 부동 소수점 숫자
함수 유형: 수학 연산
내용 설명: 매개변수 arg의 아크 탄젠트를 반환합니다.
참조: acos() asin()

Atan2
두 숫자의 아크 탄젠트를 계산합니다.
구문: float atan2(float y, float x);
반환 값: 부동 소수점 수
함수 유형: 수학 연산
내용 설명: 이 함수는 두 숫자 y와 x의 아크탄젠트를 계산하는 데 사용됩니다. atan()과 동일 y/x를 계산하는 것도 비슷하지만 이 함수는 x와 y의 부호로 인해 결과에 영향을 미칩니다. 이 함수의 반환 값은 양수와 음수 pi (-PI <= (value) ≶= PI)
acos() atan() asin()을 참조하세요

base_convert숫자 변환을 위한 캐리 메서드 .
구문: string base_convert(string number, int frombase, int tobase);
반환값: 문자열
함수 유형: 수학 연산
내용 설명: 이 함수는 숫자 문자열 번호를 carry from base에서 carry from tobase로 변환합니다. 이 공식은 2진수에서 16진수까지의 캐리 모드를 처리할 수 있습니다. 소수점 앞에는 숫자를 사용하고, 소수점 이하에는 영문자를 사용합니다. 예를 들어, 16진수 단일 숫자의 시퀀스는 123456789abcdef이고, 10의 시퀀스는 17번째이며, 그 다음 한 숫자가 이월됩니다. 그리고 16진수에서 a는 10번째, b는 11번째, z는 36번째, 10은 37번째이므로 캐리가 수행됩니다.

사용 예

이 예는 16진수 문자열을 2진수 문자열로 변환합니다.

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

BinDec
2진수를 10진수로 변환합니다.
구문: int binec(string Binary_string);
반환값: 정수
함수 유형: 수학 연산
내용 설명: 이 함수는 이진수 문자열을 십진수 정수로 변환합니다. PHP는 계산에 32비트 부호 있는 정수를 사용하므로 처리할 수 있는 최대 십진수는 2147483647이며, 이는 이진수로 111111111111111111111111111111(31개)입니다.
참조: DecBin()

Ceil
지정된 숫자보다 큰 가장 작은 정수를 계산합니다.
구문: int ceil(float 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获取表单数据与HTML嵌入PHP脚本的实现

PHP实现数据分页显示的方法及简单实例

php中关于长度计算容易混淆的问题简单分析

위 내용은 PHP 수학 연산 함수의 함수 및 예제 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.