Entendendo as Funções Matemáticas do PHP
O PHP oferece diversas funções matemáticas que permitem realizar operações numéricas como arredondamento, trigonometria e números aleatórios.
O PHP fornece uma série de funções matemáticas integradas que permitem realizar cálculos sem precisar escrever a lógica subjacente. Essas funções trabalham com números e tipos de dados como inteiros e floats, e complementam os operadores aritméticos (+, -, *, /, %) que você já conhece. Este artigo apresenta as funções matemáticas PHP mais utilizadas — arredondamento, trigonometria, logaritmos, potências e números aleatórios — com exemplos executáveis para cada uma.
Funções de Arredondamento
Uma das operações matemáticas mais comuns no PHP é arredondar números para uma casa decimal específica. A função round pode ser usada para arredondar um número para o inteiro mais próximo ou para um número específico de casas decimais. Por exemplo, o código a seguir arredonda o número 3.14159 para duas casas decimais:
Exemplo da função round no PHP
Além da função round, o PHP também oferece as funções ceil e floor, que podem ser usadas para arredondar um número para cima ou para baixo até o inteiro mais próximo. Por exemplo:
Exemplo PHP de uso das funções ceil e floor
<?php
$num = 3.14159;
$ceiled = ceil($num);
echo $ceiled;
// Output: 4
echo "\n";
$floored = floor($num);
// Output: 3
echo $floored;
?>Funções Trigonométricas
O PHP oferece várias funções trigonométricas, incluindo sin, cos e tan, que podem ser usadas para calcular o seno, cosseno e tangente de um ângulo, respectivamente. Essas funções são úteis para realizar cálculos relacionados a ângulos e distâncias em espaços 2D e 3D.
Importante: Todas as funções trigonométricas do PHP esperam ângulos em radianos. Use deg2rad() para converter graus em radianos antes de passá-los para essas funções.
Exemplo PHP de uso das funções matemáticas deg2rad, sin, cos e tan
<?php
$angle = deg2rad(30);
echo $angle . "\n";
$sine = sin($angle);
echo $sine . "\n";
// Output: 0.5
$cosine = cos($angle);
echo $cosine . "\n";
// Output: 0.866025
$tangent = tan($angle);
echo $tangent . "\n";
// Output: 0.577350
?>Funções Logarítmicas
O PHP oferece várias funções logarítmicas, incluindo log, log10 e exp, que podem ser usadas para realizar diversas operações logarítmicas. A função log calcula o logaritmo natural de um número, enquanto a função log10 calcula o logaritmo na base 10. A função exp calcula o valor exponencial de um número.
Exemplo PHP de uso de Funções Logarítmicas
<?php
$num = 10;
$natural_log = log($num);
print $natural_log . "\n";
// Output: 2.30259
$log10 = log10($num);
print $log10 . "\n";
// Output: 1
$exponential = exp($num);
print $exponential . "\n";
// Output: 22026.465
?>Funções Diversas
Além das funções discutidas acima, o PHP oferece várias outras funções matemáticas que podem ser usadas para diferentes finalidades. Por exemplo, a função abs pode ser usada para calcular o valor absoluto de um número, enquanto a função pow pode ser usada para calcular a potência de um número. Você também pode usar sqrt para raízes quadradas e max/min para encontrar o maior ou menor valor em um conjunto.
Exemplo PHP de uso das funções matemáticas pow e abs
<?php
$num = -5;
$absolute = abs($num);
print $absolute . "\n";
// Output: 5
$power = pow(2, 3);
print $power . "\n";
// Output: 8
$square_root = sqrt(16);
print $square_root . "\n";
// Output: 4
$maximum = max(1, 5, 3);
print $maximum . "\n";
// Output: 5
$minimum = min(1, 5, 3);
print $minimum . "\n";
// Output: 1
?>Gerando Números Aleatórios
Números aleatórios são uma necessidade comum — para tokens, amostragem ou jogos. Use rand() (ou o mais rápido e uniforme mt_rand()) para obter um inteiro aleatório dentro de um intervalo, e random_int() quando precisar de valores criptograficamente seguros:
<?php
$dice = rand(1, 6);
echo $dice . "\n";
// Output: a number between 1 and 6, e.g. 4
$secure = random_int(1, 100);
echo $secure . "\n";
// Output: a cryptographically secure number between 1 and 100
?>Nota: não existe a função
random()no PHP — os nomes corretos sãorand(),mt_rand()erandom_int().
Conclusão
Neste artigo, exploramos algumas das funções matemáticas PHP mais utilizadas e como elas podem ser usadas para realizar diversas operações matemáticas. Seja para arredondar números, realizar cálculos trigonométricos ou trabalhar com funções logarítmicas, o PHP oferece uma variedade de funções para ajudá-lo a realizar o trabalho. Com um pouco de prática, você pode aproveitar essas funções integradas para lidar com tarefas numéricas complexas de forma eficiente em suas aplicações PHP. Para aprofundar o conhecimento, consulte a referência completa de PHP Math e o capítulo sobre formatação de números para exibição.
Tabela de Referência Rápida
| Função | Assinatura | Tipo de Retorno | Exemplo |
|---|---|---|---|
round() | round(float $num, int $precision = 0): float | float | round(3.14159, 2) → 3.14 |
ceil() / floor() | ceil(float $num): float / floor(float $num): float | float | ceil(3.14) → 4.0 |
sin() / cos() / tan() | sin(float $num): float (etc.) | float | sin(deg2rad(30)) → 0.5 |
log() / log10() / exp() | log(float $num, float $base = M_E): float (etc.) | float | log(10) → 2.30259 |
abs() | `abs(int | float $num): int | float` |
pow() | pow(float $num, float $exp): float | float | pow(2, 3) → 8.0 |
sqrt() | sqrt(float $num): float | float | sqrt(16) → 4.0 |
max() / min() | max(mixed $value, mixed ...$values): mixed | mixed | max(1, 5, 3) → 5 |
rand() / mt_rand() | rand(int $min, int $max): int | int | rand(1, 6) → ex. 4 |
random_int() | random_int(int $min, int $max): int | int | random_int(1, 100) → int seguro |