當前位置:學者齋 >

設計製作 >網頁設計 >

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 是第三十七個,這時才進位。

使用範例

本例將十六進位字符串轉成二進位字符串

BinDec

二進位轉成十進位。

語法: int bindec(string binary_string);

返回值: 整數

函數種類: 數學運算

內容説明: 本函數將二進位數字字符串轉成十進位的整數。由於 PHP 使用 32 位有正負號整數計算,能處理的最大十進位數字為 2147483647,也就是二進位數字的 1111111111111111111111111111111 (31 個 1)。

參考: DecBin()

Ceil

計算大於指定數的最小整數。

語法: int ceil(float number);

返回值: 整數

函數種類: 數學運算

內容説明: 本函數用來計算比浮點參數 number 大的最小整數。

使用範例

本例返回值為 4。

參考: 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。

參考: 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) 演算法來計算亂數值。有關馬特賽特旋轉演算法可在松本真的 ~matumoto/ 找到更多的相關信息,最佳化的原始程序則在 ~marc/hawk/。若沒有指定亂數的最大及最小範圍,本函數會自動的從 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 值最好也是隨機出現的數字,例如利用加入時間做為變量的來源就是不錯的方法,或者開發其它的硬體周邊界面可取得更好的亂數。

使用範例

本例加入時間的因素,以執行時的百萬分之一秒當亂數種子

參考: 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 為整數部份每三位的分隔符號,默認值是 ","。本函數最特別的地方就是參數數目,最少要有一個,也就是欲格式化的'字符串;也可以有二個或者四個參數,但不能用三個參數。值得注意的是指定小數點的位數之後的數字直接捨棄,沒有四捨五入的情形。

使用範例

OctDec

八進位轉十進位。

語法: string decoct(int number);

返回值: 字符串

函數種類: 數學運算

內容説明: 本函數將八進位字符串轉成十進位數字。由於 PHP 使用 32 位有正負號整數計算,能處理最大的八進位數字為 17777777777,也就是十進位數字的 2147483647。

參考: DecOct()

pi

圓周率。

語法: double pi(void);

返回值: 倍精確數

函數種類: 數學運算

內容説明: 本函數返回圓周率。不需輸入參數。

pow

次方。

語法: float pow(float base, float exp);

返回值: 浮點數

函數種類: 數學運算

內容説明: 本函數計算次方值。參數 base 為基底,exp 為冪數。

使用範例

參考: Log10() Exp()

rand

取得隨機數值。

語法: int rand([int min], [int max]);

返回值: 整數

函數種類: 數學運算

內容説明: 本函數用來取得隨機數值。若沒有指定隨機數的最大及最小範圍,本函數會自動的從 0 到 RAND_MAX 中取一個隨機數。若有指定 min 及 max 的參數,則從指定參數中取一個數字。例如 rand(38, 49) 則會從 38 到 49 之間取一個隨機數值,UNIX 系統包含 49、Win32 系統不包含 49 ([][/email] 10-May-1999)。值得注意的是為使隨機數的亂度最大,每次在取隨機數之前最好使用 srand() 以配置新的隨機數種子。

參考: srand() getrandmax() mt_rand() mt_srand() mt_getrandmax()

round

四捨五入。

語法: double round(double val);

返回值: 倍精確數

函數種類: 數學運算

內容説明: 本函數用來將數字小數點後四捨五入。

使用範例

參考: Ceil() Floor()

Sin

正弦計算。

語法: float sin(float arg);

返回值: 浮點數

函數種類: 數學運算

內容説明: 本函數計算參數 arg 的正弦值 (sine)。

參考: Cos() Tan()

Sqrt

開平方根。

語法: float sqrt(float arg);

返回值: 浮點數

函數種類: 數學運算

內容説明: 本函數將參數 arg 開平方根。

srand

配置隨機數種子。

語法: void srand(int seed);

返回值: 無

函數種類: 數學運算

內容説明: 本函數傳入參數 seed 後,配置隨機數的種子。值得注意的是參數 seed 值最好也是隨機出現的數字,例如利用加入時間做為變量的來源就是不錯的方法,或者開發其它的硬體周邊界面可取得更好的隨機數。

使用範例

本例加入時間的因素,以執行時的百萬分之一秒當隨機數種子

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

Tan

正切計算。

語法: float tan(float arg);

返回值: 浮點數

函數種類: 數學運算

內容説明: 本函數計算參數 arg 的正切值 (tangent)。

參考: Sin() Cos()

  • 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-hk/sjzz/sjzz/qr1ke2.html