PHP - funções gmp

O que é GMP?

GMP significa GNU Multiple Precision Arithmetic Library (GMP).

GMP é uma biblioteca com suporte em PHP que permite fazer operações matemáticas em números inteiros com sinal, números racionais e números de ponto flutuante. O GMP possui uma rica coleção de funções que ajudam a realizar operações matemáticas complexas em números grandes. Diz-se que o GMP é mais rápido no cálculo do resultado final em números muito grandes.

O GMP é muito útil em aplicações como ciptografia, segurança de internet e também em softwares que tratam de operações aritméticas.

Instalação GMP em PHP

O módulo GMP é adicionado por padrão ao PHP. Você pode ativar o mesmo removendo o (;) ; extension = gmp adicionado no início da extensão no php.ini. Depois reinicie o apache e confirme se as alterações estão refletindo. Salve o código abaixo como .php e execute o mesmo no navegador.

<?php
   phpinfo();
?>

Você deve ver o GMP habilitado no navegador conforme mostrado abaixo -

Funções GMP

A tabela a seguir lista todas as funções relacionadas às funções PHP GMP. Aqui, a versão da coluna indica a versão mais antiga do PHP que suporta a função.

Sr. Não Descrição da função Versão
1 gmp_abs ()

Retorna o valor absoluto

5.0.0
2 gmp_add ()

Retorna a soma de dois números

5.0.0
3 gmp_and ()

Retorna a comparação E bit a bit de dois números

5.0.0
4 gmp_binomial ()

Calcula o coeficiente binomial

7.3.0
5 gmp_clrbit ()

Limpa a parte

5.0.0
6 gmp_cmp ()

Compara dois números GMP

5.0.0
7 gmp_com ()

Calcula o complemento de alguém

5.0.0
8 gmp_div_q ()

Divide os números fornecidos

5.0.0
9 gmp_div_qr ()

Divide os números dados e retorna o quociente e o resto

5.0.0
10 gmp_div_r ()

Divide os números fornecidos e retorna o restante

5.0.0
11 gmp_div ()

Divide os números fornecidos

5.0.0
12 gmp_divexact ()

Dá divisão exata de números dados

5.0.0
13 gmp_export ()

Exporta uma string binária

5.6.1
14 gmp_fact ()

Calcula o fatorial de um determinado número

5.0.0
15 gmp_gcd ()

Calcula GCD de números dados

5.0.0
16 gmp_gcdext ()

Calcula o GCD e multiplicadores para os números fornecidos

5.0.0
17 gmp_hamdist ()

Calcula a distância de Hamming entre dois números dados

5.0.0
18 gmp_import ()

Importações de uma string binária

5.6.1
19 gmp_init ()

Cria um número GMP

5.0.0
20 gmp_intval ()

Converte o número GMP em um inteiro

5.0.0
21 gmp_invert ()

Retorna o inverso modular de determinados números GMP

5.0.0
22 gmp_jacobi ()

Calcula o símbolo jacobi

5.0.0
23 gmp_kronecker ()

Calcula o símbolo Kronecker

7.3.0
24 gmp_lcm ()

Calcula o LCM dos números de GMP fornecidos

7.3.0
25 gmp_legendre ()

Calcula o símbolo Legendre

5.0.0
26 gmp_mod ()

Retorna o módulo

5.0.0
27 gmp_mul ()

Multiplica os números GMP

5.0.0
28 gmp_neg ()

Retorna o valor negativo do número fornecido

5.0.0
29 gmp_ nextprime ()

Ajuda a encontrar o próximo número primo

5.2.0
30 gmp_or ()

Calcula o OR bit a bit dos números fornecidos

5.0.0
31 gmp_ perfect_ power ()

Verifica se o número GMP é um poder perfeito

7.3.0
32 gmp_perfect_square ()

Verifica se o número GMP é um quadrado perfeito

5.0.0
33 gmp_popcount ()

Calcula a contagem da população

5.0.0
34 gmp_pow ()

Devolve o resultado para o aumento de número dado à potência

5.0.0
35 gmp_powm ()

Retorna o novo número com o número fornecido elevado à potência junto com o módulo

5.0.0
36 gmp_prob_prime ()

Verifica se o número GMP é primo ou não

5.0.0
37 gmp_random_bits ()

Retorna um número aleatório

5.6.3
38 gmp_random_range ()

Retorna um número aleatório entre os números mínimo e máximo fornecidos

5.6.3
39 gmp_random_seed ()

Define a semente para gerar o número aleatório

7.0.0
40 gmp_random ()

Retorna um número aleatório.

5.0.0
41 gmp_root ()

Retorna o valor inteiro para a raiz

5.6.0
42 gmp_rootrem ()

Retorna o valor inteiro e o resto da enésima raiz

5.6.0
43 gmp_scan0 ()

Verifica os 0s no número fornecido

5.0.0
44 gmp_scan1 ()

Verifica o 1 no número fornecido

5.0.0
45 gmp_setbit ()

Define o índice de bits para o número GMP dado

5.0.0
46 gmp_sign ()

Retorna o sinal do número fornecido

5.0.0
47 gmp_sqrt ()

Calcula a raiz quadrada

5.0.0
48 gmp_sqrtrem ()

Calcula a raiz quadrada com o resto

5.0.0
49 gmp_strval ()

Converte determinado número GMP em uma string

5.0.0
50 gmp_sub ()

Retorna a diferença entre dois números dados

5.0.0
51 gmp_testbit ()

Testa se o bit está definido para o índice fornecido

5.3.0
52 gmp_xor ()

Calcula o XOR bit a bit dos números dados

5.0.0