deg2rad()
La función deg2rad() en PHP convierte un ángulo de grados a radianes. Aprende su sintaxis, ejemplos y casos de uso comunes.
La función deg2rad() de PHP convierte un ángulo medido en grados al ángulo equivalente en radianes. Esta página explica qué devuelve, por qué importa la conversión, cómo se combina con las funciones trigonométricas de PHP y los errores más comunes a tener en cuenta.
¿Por qué convertir grados a radianes?
Las personas suelen pensar en ángulos en grados (un círculo completo es 360°), pero las funciones trigonométricas de PHP — sin(), cos(), tan() y similares — esperan su argumento en radianes, donde un círculo completo es 2π (aproximadamente 6.28). Si pasas grados directamente a sin(), obtendrás un resultado incorrecto. deg2rad() es el puente: convierte primero, luego llama a la función trigonométrica.
La matemática es una simple proporción:
radians = degrees × (π / 180)Así, deg2rad(180) devuelve π (≈ 3.14159265…) y deg2rad(90) devuelve π/2 (≈ 1.5707963…).
Sintaxis
deg2rad(float $num): float$num— el ángulo en grados. Se acepta cualquier valor flotante o entero, incluyendo valores negativos y valores mayores que 360.- Valor de retorno — el mismo ángulo expresado en radianes, como un
float.
deg2rad() es la inversa de rad2deg(), que va en la dirección contraria.
Ejemplo básico
Esto imprime:
0.78539816339745Ese valor es π/4 — exactamente un cuarto de π, lo cual tiene sentido porque 45° es un cuarto de 180°.
Usando deg2rad() con funciones trigonométricas
La razón más común para usar deg2rad() es pasar un valor en grados a sin(), cos() o tan():
<?php
// sin() expects radians, so convert the 30° angle first
echo sin(deg2rad(30)); // 0.5
echo "\n";
// Without the conversion the result is meaningless:
echo sin(30); // -0.98803162409286
?>La primera línea devuelve correctamente 0.5 (el seno de 30°). La segunda trata 30 como 30 radianes — aproximadamente 4.7 vueltas completas alrededor del círculo — por lo que el resultado no tiene nada que ver con 30 grados. Este es el error más frecuente al trabajar con ángulos en PHP.
Trabajando con otros ángulos
deg2rad() acepta cualquier valor numérico, no solo los "redondos":
<?php
echo deg2rad(180); // 3.1415926535898 (π)
echo "\n";
echo deg2rad(360); // 6.2831853071796 (2π)
echo "\n";
echo deg2rad(-90); // -1.5707963267949 (negative angle)
?>Para valores exactos, PHP también expone pi() y la constante M_PI, por lo que deg2rad(180) y M_PI producen el mismo número.
Errores comunes
- Los radianes entran y salen de las funciones trigonométricas.
deg2rad()solo convierte el número; no cambia el comportamiento desin()/cos()/tan(). Convierte siempre antes de la llamada trigonométrica. - Precisión de punto flotante. Los resultados son flotantes, por lo que comparaciones como
deg2rad(180) == M_PIpueden ser poco confiables debido al redondeo. Compara con una pequeña tolerancia en lugar de usar==. echotrunca la visualización.echomuestra ~14 dígitos significativos por defecto; el flotante almacenado tiene más. Usaprintf('%.20f', deg2rad(45))si necesitas ver la precisión completa.
Conclusión
deg2rad() convierte un ángulo en grados a radianes usando degrees × π / 180, y casi siempre se utiliza justo antes de una función trigonométrica como sin(), cos() o tan(). Recuerda que las funciones trigonométricas de PHP trabajan en radianes, usa deg2rad() para convertir al entrar, y rad2deg() para volver en sentido contrario.