tan()
Aprende a usar la función tan() en PHP para calcular la tangente de un ángulo expresado en radianes.
La función tan() en PHP devuelve la tangente de un ángulo. El ángulo debe expresarse en radianes, no en grados — esta es la fuente más común de resultados incorrectos, y más adelante veremos cómo convertir.
Este capítulo explica la sintaxis, los parámetros y el valor de retorno de tan(), muestra ejemplos ejecutables y señala los errores más habituales (radianes frente a grados, y los valores donde la tangente se dispara hacia el infinito).
Qué hace la función tan()
En un triángulo rectángulo, la tangente de un ángulo es la razón entre el lado opuesto al ángulo y el lado adyacente a él. Equivalentemente, tan(x) = sin(x) / cos(x).
tan() recibe un único ángulo en radianes y devuelve esa razón como un float. Un círculo completo equivale a 2π radianes (360°), de modo que π/4 radianes es igual a 45°, cuya tangente es 1.
Sintaxis
tan(float $num): float| Parámetro | Tipo | Descripción |
|---|---|---|
$num | float | El ángulo, en radianes. |
Valor de retorno: un float — la tangente de $num.
Ejemplo básico
Aquí pasamos pi() / 4 radianes (45°). La tangente de 45° es exactamente 1, aunque el redondeo de coma flotante la imprime como algo parecido a 0.99999999999999.
Trabajar con grados
La mayoría de las personas piensa en grados, pero tan() solo entiende radianes. Convierta primero con deg2rad(), o multiplique por pi() / 180:
<?php
$degrees = 60;
// Convert degrees to radians before calling tan()
$radians = deg2rad($degrees);
echo tan($radians); // ~1.7320508075689 (√3)
?>Pasar 60 directamente a tan(60) calcularía la tangente de 60 radianes — un valor completamente diferente y sin sentido para este caso de uso.
Advertencia: dónde la tangente "se dispara"
La tangente es sin(x) / cos(x), por lo que es indefinida donde cos(x) es cero — en 90°, 270°, etcétera (π/2 + nπ). En matemáticas esto es infinito; en coma flotante, cos(pi()/2) es un número distinto de cero muy pequeño, por lo que tan() devuelve un valor finito muy grande en lugar de INF:
<?php
echo tan(pi() / 2); // ~1.6331239353195E+16 (very large, not exactly INF)
?>Si necesita una comprobación exacta de "indefinido", verifique si cos($x) está cerca de cero antes de dividir.
Funciones relacionadas
tanh()— tangente hiperbólica.atan()— tangente inversa (arcotangente), devuelve un ángulo en radianes.sin()ycos()— los componentes básicos de la tangente.deg2rad()yrad2deg()— convierten entre grados y radianes.
Conclusión
tan() devuelve la tangente de un ángulo expresado en radianes. Recuerde los dos puntos esenciales: convierta los grados a radianes primero, y tenga en cuenta que la tangente es indefinida en 90° más múltiplos de 180°, donde PHP devuelve un valor muy grande en lugar de infinito.