tan()
Découvrez la fonction tan() en PHP, qui calcule la tangente d'un angle exprimé en radians.
La fonction tan() en PHP retourne la tangente d'un angle. L'angle doit être fourni en radians, et non en degrés — c'est la source d'erreurs la plus fréquente, et nous verrons comment effectuer la conversion ci-dessous.
Ce chapitre explique la syntaxe, les paramètres et la valeur de retour de tan(), présente des exemples exécutables et met en évidence les pièges à éviter (radians vs. degrés, les valeurs où la tangente tend vers l'infini).
Ce que fait la fonction tan()
Dans un triangle rectangle, la tangente d'un angle est le rapport entre le côté opposé à l'angle et le côté adjacent. De manière équivalente, tan(x) = sin(x) / cos(x).
tan() prend un seul angle en radians et retourne ce rapport sous forme de float. Un cercle complet représente 2π radians (360°), donc π/4 radians équivaut à 45°, dont la tangente est 1.
Syntaxe
tan(float $num): float| Paramètre | Type | Description |
|---|---|---|
$num | float | L'angle, en radians. |
Valeur de retour : un float — la tangente de $num.
Exemple de base
Ici, nous passons pi() / 4 radians (45°). La tangente de 45° est exactement 1, bien que l'arrondi en virgule flottante affiche quelque chose comme 0.99999999999999.
Travailler avec des degrés
La plupart des gens raisonnent en degrés, mais tan() ne comprend que les radians. Effectuez la conversion au préalable avec deg2rad(), ou multipliez par pi() / 180 :
<?php
$degrees = 60;
// Convert degrees to radians before calling tan()
$radians = deg2rad($degrees);
echo tan($radians); // ~1.7320508075689 (√3)
?>Passer 60 directement à tan(60) calculerait la tangente de 60 radians — une valeur complètement différente et sans signification pour ce cas d'usage.
Piège : là où la tangente « explose »
La tangente est sin(x) / cos(x), donc elle est indéfinie partout où cos(x) est nul — à 90°, 270°, etc. (π/2 + nπ). En mathématiques, cela correspond à l'infini ; en virgule flottante, cos(pi()/2) est un tout petit nombre non nul, donc tan() retourne une valeur finie très grande plutôt que INF :
<?php
echo tan(pi() / 2); // ~1.6331239353195E+16 (very large, not exactly INF)
?>Si vous avez besoin d'une vérification exacte de « valeur indéfinie », testez si cos($x) est proche de zéro avant de diviser.
Fonctions associées
tanh()— tangente hyperbolique.atan()— tangente inverse (arctangente), retourne un angle en radians.sin()etcos()— les briques de base de la tangente.deg2rad()etrad2deg()— conversion entre degrés et radians.
Conclusion
tan() retourne la tangente d'un angle exprimé en radians. Retenez deux points essentiels : convertissez d'abord les degrés en radians, et sachez que la tangente est indéfinie à 90° plus les multiples de 180°, où PHP retourne une très grande valeur plutôt que l'infini.