
- PHP 教程
- PHP - 首頁
- PHP - 簡介
- PHP - 安裝
- PHP - 歷史
- PHP - 特性
- PHP - 語法
- PHP - Hello World
- PHP - 註釋
- PHP - 變數
- PHP - Echo/Print
- PHP - var_dump
- PHP - $ 和 $$ 變數
- PHP - 常量
- PHP - 魔術常量
- PHP - 資料型別
- PHP - 型別轉換
- PHP - 型別強制轉換
- PHP - 字串
- PHP - 布林值
- PHP - 整數
- PHP - 檔案與 I/O
- PHP – 數學函式
- PHP - Heredoc & Nowdoc
- PHP - 複合型別
- PHP - 檔案包含
- PHP - 日期與時間
- PHP - 標量型別宣告
- PHP - 返回型別宣告
- PHP 運算子
- PHP - 運算子
- PHP - 算術運算子
- PHP - 比較運算子
- PHP - 邏輯運算子
- PHP - 賦值運算子
- PHP - 字串運算子
- PHP - 陣列運算子
- PHP - 條件運算子
- PHP - 展開運算子
- PHP - 空值合併運算子
- PHP - 比較運算子(太空船運算子)
- PHP 控制語句
- PHP - 決策
- PHP - If…Else 語句
- PHP - Switch 語句
- PHP - 迴圈型別
- PHP - For 迴圈
- PHP - Foreach 迴圈
- PHP - While 迴圈
- PHP - Do…While 迴圈
- PHP - Break 語句
- PHP - Continue 語句
- PHP 函式
- PHP - 函式
- PHP - 函式引數
- PHP - 按值傳遞
- PHP - 按引用傳遞
- PHP - 預設引數
- PHP - 具名引數
- PHP - 可變引數
- PHP - 返回值
- PHP - 傳遞函式
- PHP - 遞迴函式
- PHP - 型別提示
- PHP - 變數作用域
- PHP - 嚴格型別
- PHP - 匿名函式
- PHP - 箭頭函式
- PHP - 可變函式
- PHP - 區域性變數
- PHP - 全域性變數
- PHP 超全域性變數
- PHP - 超全域性變數
- PHP - $GLOBALS
- PHP - $_SERVER
- PHP - $_REQUEST
- PHP - $_POST
- PHP - $_GET
- PHP - $_FILES
- PHP - $_ENV
- PHP - $_COOKIE
- PHP - $_SESSION
- PHP 檔案處理
- PHP - 檔案處理
- PHP - 開啟檔案
- PHP - 讀取檔案
- PHP - 寫入檔案
- PHP - 檔案是否存在
- PHP - 下載檔案
- PHP - 複製檔案
- PHP - 追加檔案
- PHP - 刪除檔案
- PHP - 處理 CSV 檔案
- PHP - 檔案許可權
- PHP - 建立目錄
- PHP - 列出檔案
- 面向物件的 PHP
- PHP - 面向物件程式設計
- PHP - 類和物件
- PHP - 建構函式和解構函式
- PHP - 訪問修飾符
- PHP - 繼承
- PHP - 類常量
- PHP - 抽象類
- PHP - 介面
- PHP - 特性
- PHP - 靜態方法
- PHP - 靜態屬性
- PHP - 名稱空間
- PHP - 物件迭代
- PHP - 封裝
- PHP - final 關鍵字
- PHP - 過載
- PHP - 克隆物件
- PHP - 匿名類
- PHP Web 開發
- PHP - Web 概念
- PHP - 表單處理
- PHP - 表單驗證
- PHP - 表單郵件/URL
- PHP - 完整表單
- PHP - 檔案包含
- PHP - GET & POST
- PHP - 檔案上傳
- PHP - Cookie
- PHP - Session
- PHP - Session 選項
- PHP - 傳送郵件
- PHP - 淨化輸入
- PHP - Post-Redirect-Get (PRG)
- PHP - Flash 訊息
- PHP 高階
- PHP - MySQL
- PHP.INI 檔案配置
- PHP - 陣列解構
- PHP - 編碼規範
- PHP - 正則表示式
- PHP - 錯誤處理
- PHP - Try…Catch
- PHP - 除錯 Bug
- PHP - 給 C 開發者
- PHP - 給 Perl 開發者
- PHP - 框架
- PHP - Core PHP 與框架
- PHP - 設計模式
- PHP - 過濾器
- PHP - JSON
- PHP - 異常
- PHP - 特殊型別
- PHP - 雜湊
- PHP - 加密
- PHP - is_null() 函式
- PHP - 系統呼叫
- PHP - HTTP 認證
- PHP - 交換變數
- PHP - Closure::call()
- PHP - 過濾後的 unserialize()
- PHP - IntlChar
- PHP - CSPRNG
- PHP - 期望值
- PHP - use 語句
- PHP - 整數除法
- PHP - 已棄用的特性
- PHP - 已移除的擴充套件和 SAPI
- PHP - PEAR
- PHP - CSRF
- PHP - FastCGI 程序
- PHP - PDO 擴充套件
- PHP - 內建函式
- PHP 有用資源
- PHP - 速查表
- PHP - 問答
- PHP - 快速指南
- PHP - 線上編譯器
- PHP - 有用資源
- PHP - 討論
PHP – 數學函式
為了實現數學運算,PHP 提供了數學(算術)運算子和許多數學函式。本章將透過示例解釋以下數學函式。
PHP abs() 函式
abs() 函式是 PHP 直譯器中的內建函式。此函式接受任何數字作為引數,並返回一個正值,忽略其符號。任何數字的絕對值總是正數。
abs( mixed $num)
PHP abs() 函式返回 **num** 的絕對值。如果 num 的資料型別是浮點數,則其返回型別也為浮點數。對於整數引數,返回型別為整數。
示例
請看以下示例:
<?php $num=-9.99; echo "negative float number: " . $num . "\n"; echo "absolute value : " . abs($num) . "\n"; $num=25.55; echo "positive float number: " . $num . "\n"; echo "absolute value : " . abs($num). "\n"; $num=-45; echo "negative integer number: " . $num . "\n"; echo "absolute value : " . abs($num) . "\n"; $num=25; echo "positive integer number: " . $num . "\n"; echo "absolute value : " . abs($num); ?>
它將產生以下 **輸出**:
negative float number: -9.99 absolute value : 9.99 positive float number: 25.55 absolute value : 25.55 negative integer number: -45 absolute value : 45 positive integer number: 25 absolute value : 25
PHP ceil() 函式
ceil() 函式是 PHP 直譯器中的內建函式。此函式接受任何浮點數作為引數,並將其向上舍入到下一個最高的整數。此函式始終返回一個浮點數,因為浮點數的範圍大於整數。
ceil ( float $num ) : float
PHP ceil() 函式返回大於或等於給定引數的最小整數。
示例 1
以下程式碼將 5.78 舍入到其下一個最高的整數 6
<?php $arg=5.78; $val=ceil($arg); echo "ceil(" . $arg . ") = " . $val; ?>
它將產生以下 **輸出**:
ceil(5.78) = 6
示例 2
以下示例顯示如何找到 15.05 的下一個最高整數。
<?php $arg=15.05; $val=ceil($arg); echo "ceil(" . $arg . ") = " . $val; ?>
它將產生以下 **輸出**:
ceil(15.05) = 16
示例 3
對於負數,它將舍入到 0。
<?php $arg=-3.95; $val=ceil($arg); echo "ceil(" . $arg . ") = " . $val; ?>
它將產生以下 **輸出**:
ceil(-3.95) = -3
PHP exp() 函式
**exp()** 函式計算 e 的指數,即尤拉數。PHP 有一個預定義的常量 M_E,它表示尤拉數,等於 2.7182818284590452354。因此,exp(x) 返回 2.7182818284590452354x
此函式始終返回浮點數。
exp ( float $arg ) : float
PHP exp() 函式返回尤拉數 e 提升到給定的 **arg**。請注意,**e** 是自然對數的底數。exp() 函式是自然對數的逆函式。
示例 1
PHP 中的預定義常量之一是 **M_LN2**,它代表 loge2,等於 0.69314718055994530942。因此,此值的 exp() 將返回 2。
<?php echo "exp(" . M_LN2 . ") = " . exp(M_LN2); ?>
它將產生以下 **輸出**:
exp(0.69314718055995) = 2
示例 2
M_LN10 是另一個預定義常量,代表 loge10。此程式計算 exp(M_LN10) 並返回 10。
<?php echo "exp(" . M_LN10 . ") = " . exp(M_LN10); ?>
它將產生以下 **輸出**:
exp(2.302585092994) = 10
PHP floor() 函式
floor() 函式是 PHP 直譯器中的另一個內建函式。此函式接受任何浮點數作為引數,並將其向下舍入到下一個最低的整數。此函式始終返回一個浮點數,因為浮點數的範圍大於整數。
floor ( float $num ) : float
PHP floor() 函式返回小於或等於給定引數的最大整數。
示例 1
以下示例顯示如何將 15.05 舍入到其下一個最高的整數 15
<?php $arg=15.05; $val=floor($arg); echo "floor(" . $arg . ") = " . $val; ?>
它將產生以下 **輸出**:
floor(15.05) = 15
示例 2
以下示例顯示如何找到 5.78 的下一個最低整數。
<?php $arg=5.78; $val=floor($arg); echo "floor(" . $arg . ") = " . $val; ?>
它將產生以下 **輸出**:
floor(5.78) = 5
示例 3
負數將舍入遠離 0。
<?php $arg=-3.95; $val=floor($arg); echo "floor(" . $arg . ") = " . $val; ?>
它將產生以下 **輸出**:
floor(-3.95) = -4
PHP intdiv() 函式
intdiv() 函式返回兩個整數引數的整數商。如果 x/y 的結果是商 "i" 和餘數 "r",則:
x = y*i+r
在這種情況下,intdiv(x,y) 返回 "i"
intdiv ( int $x , int $y ) : int
"x" 引數構成除法表示式的分子部分,而 "y" 引數構成除法表示式的分母部分。
PHP intdiv() 函式返回 "x" 除以 "y" 的整數商。如果兩個引數都是正數或都是負數,則返回值為正數。
示例 1
以下示例顯示,如果分子小於分母,則 intdiv() 函式返回 0。
<?php $x=10; $y=3; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r . "\n"; $r=intdiv($y, $x); echo "intdiv(" . $y . "," . $x . ") = " . $r; ?>
它將產生以下 **輸出**:
intdiv(10,3) = 3 intdiv(3,10) = 0
示例 2
在以下示例中,intdiv() 函式返回一個負整數,因為分子或分母是負數。
<?php $x=10; $y=3; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r . "\n"; $x=10; $y=-3; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r . "\n"; $x=-10; $y=3; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r . "\n"; $x=-10; $y=-3; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r ; ?>
它將產生以下 **輸出**:
intdiv(10,3) = 3 intdiv(10,-3) = -3 intdiv(-10,3) = -3 intdiv(-10,-3) = 3
示例 3
以下示例中分母為 0。這將導致 DivisionByZeroError 異常。
<?php $x=10; $y=0; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r . "\n"; ?>
它將產生以下 **輸出**:
PHP Fatal error: Uncaught DivisionByZeroError: Division by zero
示例 4
兩個引數中的小數部分將被忽略。PHP intdiv() 函式僅應用於整數部分。
<?php $x=2.90; $y=1.90; $r=intdiv($x, $y); echo "intdiv(" . $x . "," . $y . ") = " . $r . ""; ?>
它將產生以下 **輸出**:
intdiv(2.9,1.9) = 2
PHP log10() 函式
**log10** () 函式計算一個數的以 10 為底的對數。以 10 為底的對數也稱為 **常用** 或 **標準對數**。log10(x) 函式計算 log10x。它與自然對數的關係如下:
log10x=logex/loge10 ; So that log10100=loge100/loge10 = 2
在 PHP 中,**log10** 由 **log10()** 函式表示
log10 ( float $arg ) : float
PHP log10() 函式返回 **arg** 的以 10 為底的對數。
示例 1
以下程式碼計算 100 的以 10 為底的對數
<?php $arg=100; echo "log10(" . $arg. ")=" . log10($arg) . ""; ?>
它將產生以下 **輸出**:
log10(100)=2
示例 2
以下程式碼計算尤拉數 **M_E** 的以 10 為底的對數。結果等於預定義常量 **M_LOG10E**
<?php $arg=M_E; echo "log10(" . $arg. ")=" . log10($arg) . "\n"; echo "predefined constant M_LOG10E=" . M_LOG10E; ?>
它將產生以下 **輸出**:
log10(2.718281828459)=0.43429448190325 predefined constant M_LOG10E=0.43429448190325
示例 3
以下程式碼計算 log100 並返回 -∞。
<?php $arg=0; echo "log10(" . $arg. ")=" . log10($arg) . ""; ?>
它將產生以下 **輸出**:
log10(0)=-INF
示例 4
同樣,sqrt(-1) 返回 NAN。因此,它的 log10() 也返回 NAN。
<?php $arg=sqrt(-1); echo "log10(" . $arg. ")=" . log10($arg) . ""; ?>
它將產生以下 **輸出**:
log10(NAN)=NAN
PHP max() 函式
max() 函式返回陣列中最大的元素,或者在兩個或多個逗號分隔的引數中返回最大的元素。
max ( array $values ) : mixed
或者,
max ( mixed $value1 [, mixed $... ] ) : mixed
如果只給出一個引數,它應該是一個值陣列,這些值可以是相同或不同型別的。
如果給出兩個或多個引數,它們應該是任何可比較的相同或不同型別的值。
PHP max() 函式從陣列引數或值序列中返回最大值。標準比較運算子適用。如果多種不同型別的多個值計算結果相等(例如 0 和 'PHP'),則返回函式的第一個引數。
示例 1
以下程式碼返回數值陣列中的最大值。
<?php $arg=array(23, 5.55, 142, 56, 99); echo "array="; foreach ($arg as $i) echo $i . ","; echo "\n"; echo "max = " . max($arg); ?>
它將產生以下 **輸出**:
array=23,5.55,142,56,99, max = 142
示例 2
以下程式碼返回字串陣列中的最大值。
<?php $arg=array("Java", "Angular", "PHP", "C", "Kotlin"); echo "array="; foreach ($arg as $i) echo $i . ","; echo "\n"; echo "max = " . max($arg); ?>
它將產生以下 **輸出**:
array=Java,Angular,PHP,C,Kotlin, max = PHP
示例 3
在下面的示例中,一系列字串值被提供給 max() 函式。讓我們看看它的行為 -
<?php $val1="Java"; $val2="Angular"; $val3="PHP"; $val4="C"; $val5="Kotlin"; echo "values=" . $val1 . "," . $val2 . "," . $val3 . "," . $val4 . "," . $val5 . "\n"; echo "max = " . max($val1, $val2, $val3,$val4,$val5); ?>
它將產生以下 **輸出**:
values=Java,Angular,PHP,C,Kotlin max = PHP
示例 4
在這個例子中,給定的陣列是混合資料型別的集合。
<?php $arg=array(23, "Java", 142, 1e2, 99); echo "array="; foreach ($arg as $i) echo $i . ","; echo "\n"; echo "max = " . max($arg); ?>
它將產生以下 **輸出**:
array=23,Java,142,100,99, max = 142
PHP min() 函式
min() 函式返回陣列中最小的元素,或者在兩個或多個逗號分隔的引數中返回最小的元素。
min ( array $values ) : mixed
或者,
min ( mixed $value1 [, mixed $... ] ) : mixed
如果只給出一個引數,它應該是一個值陣列,這些值可以是相同或不同型別的。
如果給出兩個或多個引數,它們應該是任何可比較的相同或不同型別的值。
PHP min() 函式從陣列引數或值序列中返回最小值。標準比較運算子適用。如果多種不同型別的多個值計算結果相等(例如 0 和 'PHP'),則返回函式的第一個引數。
示例 1
以下程式碼返回數值陣列中的最小值。
<?php $arg=array(23, 5.55, 142, 56, 99); echo "array="; foreach ($arg as $i) echo $i . ","; echo "\n"; echo "min = " . min($arg); ?>
它將產生以下 **輸出**:
array=23,5.55,142,56,99, min = 5.55
示例 2
以下程式碼返回字串陣列中的最小值。
<?php $arg=array("Java", "Angular", "PHP", "C", "Kotlin"); echo "array="; foreach ($arg as $i) echo $i . ","; echo "\n"; echo "min = " . min($arg); ?>
它將產生以下 **輸出**:
array=Java,Angular,PHP,C,Kotlin, min = Angular
示例 3
在這個例子中,一系列字串值被提供給 min() 函式。
<?php $val1="Java"; $val2="Angular"; $val3="PHP"; $val4="C"; $val5="Kotlin"; echo "values=" . $val1 . "," . $val2 . "," . $val3 . "," . $val4 . "," . $val5 . "\n"; echo "min = " . min($val1, $val2, $val3,$val4,$val5); ?>
它將產生以下 **輸出**:
values=Java,Angular,PHP,C,Kotlin min = Angular
示例 4
在這個例子中,給定的陣列是混合資料型別的集合。
<?php $arg=array(23, "Java", 142, 1e2, 99); echo "array="; foreach ($arg as $i) echo $i . ","; echo "\n"; echo "min = " . min($arg); ?>
它將產生以下 **輸出**:
array=23,Java,142,100,99, min = 23
PHP pow() 函式
pow() 函式用於計算某個數的冪。它返回 xy 計算結果,也稱為 x 的 y 次冪。PHP 還提供 "**" 作為冪運算子。
因此,pow(x,y) 返回 xy,這與 x**y 相同。
pow ( number $base , number $exp ) : number
第一個引數是要提升的底數。第二個引數是底數需要提升到的冪。
PHP pow() 函式返回底數的 exp 次冪。如果兩個引數都是非負整數,則結果將作為整數返回,否則將作為浮點數返回。
示例 1
下面的例子使用 pow() 函式計算 10 的 2 次冪 -
<?php echo "pow(10,2) = " . pow(10,2); echo " using ** operator " . 10**2; ?>
它將產生以下 **輸出**:
pow(10,2) = 100 using ** operator 100
示例 2
任何數的 0 次冪都等於 1。這在下面的例子中得到驗證 -
<?php $x=10; $y=0; echo "pow(" . $x, "," . $y . ")=". pow($x,$y); ?>
它將產生以下 **輸出**:
pow(10,0)=1
示例 3
下面的例子展示瞭如何使用 pow() 函式計算 100 的平方根 -
<?php $x=100; $y=0.5; echo "pow(" . $x, "," . $y . ")=". pow($x,$y) . "\n"; echo "using sqrt() function : ". sqrt(100); ?>
它將產生以下 **輸出**:
pow(100,0.5)=10 using sqrt() function : 10
示例 4
此示例展示瞭如何使用 pow() 函式計算圓的面積。
<?php $radius=5; echo "radius = " . $radius . " area = " . M_PI*pow(5,2); ?>
它將產生以下 **輸出**:
radius = 5 area = 78.539816339745
PHP round() 函式
round() 函式在將任何浮點數四捨五入到所需的精度級別時非常有用。正精度引數導致數字在小數點後四捨五入;而負精度則在小數點前四捨五入。預設精度為“0”。
例如,round(10.6) 返回 11,round(10.2) 返回 10。該函式始終返回浮點數。
此函式還有一個可選引數,稱為 mode,它採用後面描述的重新定義的常量之一。
round ( float $value , int $precision , int $mode ) : float
引數
Value - 要四捨五入的浮點數。
Precision - 要四捨五入的小數位數。預設為 0。正精度在小數點後四捨五入給定數字。負精度在小數點前四捨五入給定數字。
Mode - 以下預定義常量之一。
序號 | 常量和描述 |
---|---|
1 | PHP_ROUND_HALF_UP 當數字是中間值時,將其四捨五入到遠離 0 的方向。因此,1.5 變為 2,-1.5 變為 -2 |
2 | PHP_ROUND_HALF_DOWN 當數字是中間值時,將其四捨五入到接近 0 的方向。因此 1.5 變為 1,-1.5 變為 -1 |
3 | PHP_ROUND_HALF_EVEN 將數字四捨五入到最接近的偶數。 |
4 | PHP_ROUND_HALF_ODD 將數字四捨五入到最接近的奇數。 |
PHP round() 函式返回一個浮點數,該浮點數透過將值四捨五入到所需的精度來獲得。
示例 1
以下程式碼將給定數字四捨五入到正精度值 -
<?php $arg=1234.567; echo "round(" . $arg . ") = " . round($arg) . "\n"; echo "round(" . $arg . ",1) = " . round($arg,1) . "\n"; echo "round(" . $arg . ",2) = " . round($arg,2) . ""; ?>
它將產生以下 **輸出**:
round(1234.567) = 1235 round(1234.567,1) = 1234.6 round(1234.567,2) = 1234.57
示例 2
以下程式碼將數字四捨五入到負精度值 -
<?php $arg=1234.567; echo "round(" . $arg . ") = " . round($arg) . "\n"; echo "round(" . $arg . ",-1) = " . round($arg,-1) . "\n"; echo "round(" . $arg . ",-2) = " . round($arg,-2) . ""; ?>
它將產生以下 **輸出**:
round(1234.567) = 1235 round(1234.567,-1) = 1230 round(1234.567,-2) = 1200
示例 3
以下程式碼使用 UP 和 DOWN 模式常量進行四捨五入 -
<?php echo "round(3.45,HALF_UP) = " . round(3.45,0, PHP_ROUND_HALF_UP) . "\n"; echo "round(3.75 HALF_UP) = " . round(3.75, 1, PHP_ROUND_HALF_DOWN) . ""; ?>
它將產生以下 **輸出**:
round(3.45,HALF_UP) = 3 round(3.75 HALF_UP) = 3.7
示例 4
以下程式碼使用 ODD 和 EVEN 模式進行四捨五入 -
<?php echo "round( 3.45,HALF_ODD) = " . round(3.45,0, PHP_ROUND_HALF_ODD) . "\n"; echo "round(3.78 HALF_EVEN) = " . round(3.78, 0, PHP_ROUND_HALF_EVEN) . ""; ?>
它將產生以下 **輸出**:
round(3.45,HALF_ODD) = 3 round(3.78, HALF_EVEN) = 4
PHP sqrt() 函式
sqrt() 函式返回正浮點數的平方根。由於負數的平方根未定義,因此它返回 NAN。這是最常用的函式之一。此函式始終返回浮點數。
sqrt (float $arg) : float
PHP sqrt() 函式返回給定引數 arg 的平方根。對於負數,該函式返回 NAN。
示例 1
以下程式碼計算 100 的平方根 -
<?php $arg = 100; echo "Square root of " . $arg . "=" . sqrt($arg) . ""; ?>
它將產生以下 **輸出**:
Square root of 100=10
示例 2
對於 sqrt(2)、1/sqrt(2) 和 sqrt(3),PHP 分別具有特殊的預定義常量 M_SQRT2、M_SQRT1_2 和 M_SQRT3。
<?php echo "sqrt(2) = " . sqrt(2) . "\n"; echo "M_SQRT2 = " . M_SQRT2. "\n"; echo "sqrt(3) = " . sqrt(3) . "\n"; echo "M_SQRT3 = " . M_SQRT3 . "\n"; echo "1/sqrt(2)) = " . 1/sqrt(2) . "\n"; echo "M_SQRT1_2 = " . M_SQRT1_2 . ""; ?>
它將產生以下 **輸出**:
sqrt(2) = 1.4142135623731 M_SQRT2 = 1.4142135623731 sqrt(3) = 1.7320508075689 M_SQRT3 = 1.7320508075689 1/sqrt(2)) = 0.70710678118655 M_SQRT1_2 = 0.70710678118655
示例 3
數學常量 M_SQRTPI 和 M_2_SQRTPI 分別表示 sqrt(Π) 和 2/sqrt(Π) 的值。
<?php echo "sqrt(pi) = " . sqrt(M_PI) . "\n"; echo "M_SQRTPI = " . M_SQRTPI. "\n"; echo "2/sqrt(pi) = " . 2/sqrt(M_PI) . "\n"; echo "M_2_SQRTPI = " . M_2_SQRTPI . ""; ?>
它將產生以下 **輸出**:
sqrt(pi) = 1.7724538509055 M_SQRTPI = 1.7724538509055 2/sqrt(pi) = 1.1283791670955 M_2_SQRTPI = 1.1283791670955
示例 4
sqrt(-1) 未定義,因此它返回 NAN。
<?php echo "sqrt(-1) = " . sqrt(-1) . ""; ?>
它將產生以下 **輸出**:
sqrt(-1) = NAN
預定義數學常量
除了上述數學函式外,PHP 還具有以下預定義數學常量列表 -
常量 | 值 | 描述 |
---|---|---|
M_PI | 3.14159265358979323846 | π |
M_E | 2.7182818284590452354 | 尤拉數 e |
M_LOG2E | 1.4426950408889634074 | log2 e |
M_LOG10E | 0.43429448190325182765 | log10 e |
M_LN2 | 0.69314718055994530942 | loge 2 |
M_LN10 | M_LN10 2.30258509299404568402 loge 10 | loge 10 |
M_PI_2 | 1.57079632679489661923 | pi/2 |
M_PI_4 | 0.78539816339744830962 | pi/4 |
M_1_PI | 0.31830988618379067154 | 1/pi |
M_2_PI | 0.63661977236758134308 | 2/pi |
M_SQRTPI | 1.77245385090551602729 | sqrt(pi) |
M_2_SQRTPI | 1.12837916709551257390 | 2/sqrt(pi) |
M_SQRT2 | 1.41421356237309504880 | sqrt(2) |
M_SQRT3 | 1.73205080756887729352 | sqrt(3) |
M_SQRT1_2 | 0.70710678118654752440 | 1/sqrt(2) |
M_LNPI | 1.14472988584940017414 | loge(pi) |
M_EULER | 0.57721566490153286061 | 尤拉常數 |
PHP_ROUND_HALF_UP | 1 | 向上舍入 |
PHP_ROUND_HALF_DOWN | 2 | 向下舍入 |
PHP_ROUND_HALF_EVEN | 3 | 舍入到偶數 |
PHP_ROUND_HALF_ODD | 4 | 舍入到奇數 |
NAN | NAN | 非數字 |
INF | INF | 無限大 |