W3docs

Funciones matemáticas de PHP

PHP ofrece una amplia gama de funciones matemáticas para realizar cálculos de redondeo, trigonometría, logaritmos y números aleatorios.

PHP proporciona una serie de funciones matemáticas integradas que permiten realizar cálculos sin necesidad de escribir la lógica subyacente. Estas funciones trabajan con números y tipos de datos como enteros y flotantes, y complementan los operadores aritméticos (+, -, *, /, %) que ya conoces. Este artículo recorre las funciones matemáticas de PHP más utilizadas — redondeo, trigonometría, logaritmos, potencias y números aleatorios — con ejemplos ejecutables para cada una.

Funciones de redondeo

Una de las operaciones matemáticas más comunes en PHP es redondear números a un decimal específico. La función round permite redondear un número al entero más cercano o a un número concreto de decimales. Por ejemplo, el siguiente código redondeará el número 3.14159 a dos decimales:

Ejemplo de la función round en PHP

php— editable, runs on the server

Además de la función round, PHP también proporciona las funciones ceil y floor, que permiten redondear un número hacia arriba o hacia abajo al entero más cercano. Por ejemplo:

Ejemplo de uso de las funciones ceil y floor en PHP

<?php

$num = 3.14159;

$ceiled = ceil($num);
echo $ceiled;
// Output: 4

echo "\n";

$floored = floor($num);
// Output: 3
echo $floored;

?>

Funciones trigonométricas

PHP proporciona varias funciones trigonométricas, incluyendo sin, cos y tan, que permiten calcular el seno, el coseno y la tangente de un ángulo, respectivamente. Estas funciones son útiles para realizar cálculos relacionados con ángulos y distancias en espacios 2D y 3D.

Importante: Todas las funciones trigonométricas de PHP esperan ángulos en radianes. Usa deg2rad() para convertir grados a radianes antes de pasarlos a estas funciones.

Ejemplo de uso de las funciones deg2rad, sin, cos y tan en PHP

<?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

?>

Funciones logarítmicas

PHP proporciona varias funciones logarítmicas, incluyendo log, log10 y exp, que permiten realizar distintas operaciones logarítmicas. La función log calcula el logaritmo natural de un número, mientras que log10 calcula el logaritmo en base 10. La función exp calcula el valor exponencial de un número.

Ejemplo de uso de funciones logarítmicas en PHP

<?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

?>

Funciones varias

Además de las funciones comentadas anteriormente, PHP ofrece otras funciones matemáticas útiles para distintos propósitos. Por ejemplo, la función abs calcula el valor absoluto de un número, mientras que pow eleva un número a una potencia. También puedes usar sqrt para raíces cuadradas y max/min para encontrar el valor mayor o menor en un conjunto.

Ejemplo de uso de las funciones matemáticas pow y abs en PHP

<?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

?>

Generación de números aleatorios

Los números aleatorios son una necesidad habitual — para tokens, muestreo o juegos. Usa rand() (o el más rápido y uniforme mt_rand()) para obtener un entero aleatorio dentro de un rango, y random_int() cuando necesites valores criptográficamente 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: no existe ninguna función random() en PHP — los nombres correctos son rand(), mt_rand() y random_int().

Conclusión

En este artículo hemos explorado algunas de las funciones matemáticas más utilizadas en PHP y cómo pueden emplearse para realizar diversas operaciones matemáticas. Ya sea que estés redondeando números, realizando cálculos trigonométricos o trabajando con funciones logarítmicas, PHP ofrece una amplia variedad de funciones para ayudarte a lograrlo. Con un poco de práctica, podrás aprovechar estas funciones integradas para manejar tareas numéricas complejas de forma eficiente en tus aplicaciones PHP. Para profundizar más, consulta la referencia completa de PHP Math y el capítulo sobre formateo de números para su presentación.

Tabla de referencia rápida

FunciónFirmaTipo de retornoEjemplo
round()round(float $num, int $precision = 0): floatfloatround(3.14159, 2)3.14
ceil() / floor()ceil(float $num): float / floor(float $num): floatfloatceil(3.14)4.0
sin() / cos() / tan()sin(float $num): float (etc.)floatsin(deg2rad(30))0.5
log() / log10() / exp()log(float $num, float $base = M_E): float (etc.)floatlog(10)2.30259
abs()`abs(intfloat $num): intfloat`
pow()pow(float $num, float $exp): floatfloatpow(2, 3)8.0
sqrt()sqrt(float $num): floatfloatsqrt(16)4.0
max() / min()max(mixed $value, mixed ...$values): mixedmixedmax(1, 5, 3)5
rand() / mt_rand()rand(int $min, int $max): intintrand(1, 6) → e.g. 4
random_int()random_int(int $min, int $max): intintrandom_int(1, 100) → secure int

Práctica

Práctica
¿Cuáles de las siguientes funciones se utilizan en PHP para operaciones matemáticas?
¿Cuáles de las siguientes funciones se utilizan en PHP para operaciones matemáticas?
Was this page helpful?