この記事では主にPHPの算術演算関数を紹介し、一般的なPHPの算術演算関数の機能、使用方法、注意事項をまとめて分析していますので、必要な方は参考にしてください
1.よく使われる関数の説明:
1. :絶対値を取得します。
Acos: 逆余弦値を取得します。
Asin: 逆正弦値を取得します。
Atan: 逆正接値を取得します。
Atan2: 2 つの数値の逆正接を計算します。
base_convert: 数値を変換するためのキャリーメソッド。
BinDec: 2 進数を 10 進数に変換します。
Ceil: 指定された数値より大きい最小の整数を計算します。
Cos: コサイン計算。
DecBin: 10 進数を 2 進数に変換します。
DecHex: 10 進数を 16 進数に変換します。
DecOct: 10 進数を 8 進数に変換します。
Exp: 自然対数 e のべき乗。
Floor: 指定された数値未満の最大の整数を計算します。
getrandmax: 乱数の最大値。
HexDec: 16 進数を 10 進数に変換します。
Log: 自然対数値。
Log10: 10 ベースのログ値。
max: 最大値を取得します。
min: 最小値を取得します。
mt_rand: ランダムな値を取得します。
mt_srand: 乱数シードを設定します。
mt_getrandmax: 乱数の最大値。
number_format: 数値文字列をフォーマットします。
OctDec: 8 進数を 10 進数に変換します。
ピ: ピ。
pow: 力。
rand: ランダムな値を取得します。
round: 丸めます。
Sin: サインの計算。
Sqrt: 平方根。
srand: 乱数シードを構成します。
Tan: タンジェントの計算。
2. 関数分析は次のとおりです:
Abs
は絶対値を取得します。
構文:mixed abs(混合数値);
戻り値:混合型データ
関数タイプ:数学演算
内容説明:パラメータ数値の絶対値を返します。 number が多倍精度浮動小数点数の場合、戻り値も多倍精度浮動小数点数になります。他の型の場合、戻り値の型は整数になります。
Acos
アークコサイン値を取得します。
構文: float acos(float arg);
戻り値: 浮動小数点数
関数の種類: 算術演算
内容の説明: パラメーター arg の逆余弦値 (アーク コサイン) を返します。
参考: asin() atan()
Asin
逆正弦値を取得します。
構文: float asin(float arg);
戻り値: 浮動小数点数
関数の種類: 数学演算
内容の説明: パラメーター arg の逆正弦値 (アークサイン) を返します。
参考: acos() atan()
Atan
逆正接値を取得します。
構文: float atan(float arg);
戻り値: 浮動小数点数
関数の種類: 数学演算
内容の説明: パラメーター arg の逆正接を返します。
参照: acos() asin()
Atan2
2 つの数値の逆正接を計算します。
構文: float atan2(float y, float x);
戻り値: 浮動小数点数
関数の種類: 数学演算
内容の説明: この関数は 2 つの数値 y と x の逆正接を計算するために使用されます。計算結果は次のとおりです。 atan() と同じ y/x の計算も似ていますが、この関数は x と y の符号により結果に影響を与えます。この関数の戻り値は、正と負の pi (-PI acos() atan() asin() を参照してください
base_convert数値を変換するキャリーメソッド。
構文: string base_convert(string number, int frombase, int tobase);
戻り値: string
関数の種類: 数学演算
内容の説明: この関数は、数値文字列数値を、base からのキャリーから tobase からのキャリーに変換します。この式は、2 進数から 16 進数までの桁上げモードを処理できます。 10 進数の前には数字が使用され、10 進数の後には英語の文字が使用されます。たとえば、16 進数の 1 桁の並びは 123456789abcdef で、10 の並びは 17 番目で、その後 1 桁繰り上がります。そして、16 進数で a が 10 番目、b が 11 番目、z が 36 番目、10 が 37 番目となり、キャリーが実行されます。
使用例
この例は、16進数の文字列をバイナリ文字列に変換します
<?php $binary = base_convert($hexadecimal, 16, 2); echo "十六进位字符串"$hexadecimal"转成二进位为"$binary"。"; ?>
BinDec
バイナリを10進数に変換します。
構文: int bindingc(string binary_string);
戻り値: integer
関数の種類: 数学演算
内容の説明: この関数は、2 進数の数字列を 10 進数の整数に変換します。 PHP は計算に 32 ビットの符号付き整数を使用するため、処理できる最大 10 進数は 2147483647 で、これはバイナリでは 111111111111111111111111111111 (31 の 1) になります。
参照: 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算術演算関数の関数と例の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。