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 |