
- 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 - 快閃記憶體訊息
- PHP 高階
- PHP - MySQL
- PHP.INI 檔案配置
- PHP - 陣列解構
- PHP - 編碼規範
- PHP - 正則表示式
- PHP - 錯誤處理
- PHP - Try…Catch
- PHP - Bug 除錯
- PHP - 給 C 開發者
- PHP - 給 PERL 開發者
- PHP - 框架
- PHP - Core PHP vs. 框架
- 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 - GMP 函式
什麼是 GMP?
GMP 代表 GNU 多精度算術庫 (GNU Multiple Precision Arithmetic Library)。
GMP 是 PHP 中支援的一個庫,允許你對有符號整數、有理數和浮點數進行數學運算。GMP 擁有豐富的函式集合,有助於對大數執行復雜的數學運算。據說 GMP 在計算非常大的數字的最終結果時速度更快。
GMP 在密碼學、網際網路安全以及處理算術運算的軟體中非常有用。
在 PHP 中安裝 GMP
GMP 模組預設新增到 PHP 中。你可以透過移除 php.ini 副檔名部分開頭處的 (;) `;extension=gmp` 來啟用它。之後重啟 Apache 並確認更改是否生效。將下面的程式碼儲存為 .php 檔案並在瀏覽器中執行。
<?php phpinfo(); ?>
你應該會在瀏覽器中看到 GMP 已啟用,如下所示:

GMP 函式
下表列出了所有與 PHP GMP 函式相關的函式。其中“版本”列表示支援該函式的最早 PHP 版本。
序號 | 函式及描述 | 版本 |
---|---|---|
1 | gmp_abs()
返回絕對值 |
5.0.0 |
2 | gmp_add()
返回兩個數的和 |
5.0.0 |
3 | gmp_and()
返回兩個數的按位與比較結果 |
5.0.0 |
4 | gmp_binomial()
計算二項式係數 |
7.3.0 |
5 | gmp_clrbit()
清除位 |
5.0.0 |
6 | gmp_cmp()
比較兩個 GMP 數 |
5.0.0 |
7 | gmp_com()
計算反碼 |
5.0.0 |
8 | gmp_div_q()
除以給定的數 |
5.0.0 |
9 | gmp_div_qr()
除以給定的數並返回商和餘數 |
5.0.0 |
10 | gmp_div_r()
除以給定的數並返回餘數 |
5.0.0 |
11 | gmp_div()
除以給定的數 |
5.0.0 |
12 | gmp_divexact()
給出給定數字的精確除法結果 |
5.0.0 |
13 | gmp_export()
匯出二進位制字串 |
5.6.1 |
14 | gmp_fact()
計算給定數字的階乘 |
5.0.0 |
15 | gmp_gcd()
計算給定數字的最大公約數 (GCD) |
5.0.0 |
16 | gmp_gcdext()
計算給定數字的最大公約數 (GCD) 和乘數 |
5.0.0 |
17 | gmp_hamdist()
計算兩個給定數字之間的漢明距離 |
5.0.0 |
18 | gmp_import()
從二進位制字串匯入 |
5.6.1 |
19 | gmp_init()
建立一個 GMP 數 |
5.0.0 |
20 | gmp_intval()
將 GMP 數轉換為整數 |
5.0.0 |
21 | gmp_invert()
返回給定 GMP 數的模反元素 |
5.0.0 |
22 | gmp_jacobi()
計算雅可比符號 |
5.0.0 |
23 | gmp_kronecker()
計算克羅內克符號 |
7.3.0 |
24 | gmp_lcm()
計算給定 GMP 數的最小公倍數 (LCM) |
7.3.0 |
25 | gmp_legendre()
計算勒讓德符號 |
5.0.0 |
26 | gmp_mod()
返回模數 |
5.0.0 |
27 | gmp_mul()
乘以 GMP 數 |
5.0.0 |
28 | gmp_neg()
返回給定數字的負值 |
5.0.0 |
29 | gmp_nextprime()
幫助查詢下一個素數 |
5.2.0 |
30 | gmp_or()
計算給定數字的按位或結果 |
5.0.0 |
31 | gmp_perfect_power()
檢查 GMP 數是否為完全冪 |
7.3.0 |
32 | gmp_perfect_square()
檢查 GMP 數是否為完全平方數 |
5.0.0 |
33 | gmp_popcount()
計算總體計數 |
5.0.0 |
34 | gmp_pow()
返回給定數字的冪的結果 |
5.0.0 |
35 | gmp_powm()
返回具有給定數字的冪以及模的新數字 |
5.0.0 |
36 | gmp_prob_prime()
檢查 GMP 數是否為素數 |
5.0.0 |
37 | gmp_random_bits()
返回隨機數 |
5.6.3 |
38 | gmp_random_range()
返回給定最小值和最大值之間的隨機數 |
5.6.3 |
39 | gmp_random_seed()
設定種子以生成隨機數 |
7.0.0 |
40 | gmp_random()
返回隨機數。 |
5.0.0 |
41 | gmp_root()
返回根的整數值 |
5.6.0 |
42 | gmp_rootrem()
返回 n 次根的整數值和餘數 |
5.6.0 |
43 | gmp_scan0()
掃描給定數字中的 0 |
5.0.0 |
44 | gmp_scan1()
掃描給定數字中的 1 |
5.0.0 |
45 | gmp_setbit()
設定給定 GMP 數字的位索引 |
5.0.0 |
46 | gmp_sign()
返回給定數字的符號 |
5.0.0 |
47 | gmp_sqrt()
計算平方根 |
5.0.0 |
48 | gmp_sqrtrem()
計算帶餘數的平方根 |
5.0.0 |
49 | gmp_strval()
將給定的 GMP 數轉換為字串 |
5.0.0 |
50 | gmp_sub()
返回兩個給定數字之間的差 |
5.0.0 |
51 | gmp_testbit()
測試給定索引的位是否已設定 |
5.3.0 |
52 | gmp_xor()
計算給定數字的按位異或結果 |
5.0.0 |