Comprendre les fonctions mathématiques PHP
PHP offre un ensemble de fonctions mathématiques intégrées pour effectuer des calculs courants : arrondi, trigonométrie, logarithmes et nombres aléatoires.
PHP fournit un ensemble de fonctions mathématiques intégrées qui vous permettent d'effectuer des calculs sans avoir à en écrire la logique vous-même. Ces fonctions opèrent sur les nombres et les types de données tels que les entiers et les flottants, et elles complètent les opérateurs arithmétiques (+, -, *, /, %) que vous connaissez déjà. Cet article présente les fonctions mathématiques PHP les plus couramment utilisées — arrondi, trigonométrie, logarithmes, puissances et nombres aléatoires — avec des exemples exécutables pour chacune.
Fonctions d'arrondi
L'une des opérations mathématiques les plus fréquentes en PHP est l'arrondi d'un nombre à un nombre précis de décimales. La fonction round permet d'arrondir un nombre à l'entier le plus proche ou à un nombre déterminé de décimales. Par exemple, le code suivant arrondit le nombre 3.14159 à deux décimales :
Exemple PHP de la fonction round
En plus de la fonction round, PHP propose également les fonctions ceil et floor, qui permettent d'arrondir un nombre vers le haut ou vers le bas à l'entier le plus proche. Par exemple :
Exemple PHP d'utilisation des fonctions ceil et floor
<?php
$num = 3.14159;
$ceiled = ceil($num);
echo $ceiled;
// Output: 4
echo "\n";
$floored = floor($num);
// Output: 3
echo $floored;
?>Fonctions trigonométriques
PHP propose plusieurs fonctions trigonométriques, notamment sin, cos et tan, qui permettent de calculer respectivement le sinus, le cosinus et la tangente d'un angle. Ces fonctions sont utiles pour effectuer des calculs liés aux angles et aux distances dans les espaces 2D et 3D.
Important : Toutes les fonctions trigonométriques PHP attendent des angles en radians. Utilisez deg2rad() pour convertir des degrés en radians avant de les passer à ces fonctions.
Exemple PHP d'utilisation des fonctions mathématiques deg2rad, sin, cos et 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
?>Fonctions logarithmiques
PHP propose plusieurs fonctions logarithmiques, notamment log, log10 et exp, qui permettent d'effectuer diverses opérations logarithmiques. La fonction log calcule le logarithme naturel d'un nombre, tandis que la fonction log10 calcule le logarithme en base 10. La fonction exp calcule la valeur exponentielle d'un nombre.
Exemple PHP d'utilisation des fonctions logarithmiques
<?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
?>Fonctions diverses
En plus des fonctions présentées ci-dessus, PHP propose plusieurs autres fonctions mathématiques utilisables à diverses fins. Par exemple, la fonction abs permet de calculer la valeur absolue d'un nombre, tandis que la fonction pow permet de calculer la puissance d'un nombre. Vous pouvez également utiliser sqrt pour les racines carrées, et max/min pour trouver la valeur la plus grande ou la plus petite dans un ensemble.
Exemple PHP d'utilisation des fonctions mathématiques pow et 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
?>Génération de nombres aléatoires
Les nombres aléatoires sont souvent nécessaires — pour des jetons, des échantillonnages ou des jeux. Utilisez rand() (ou le plus rapide et plus uniforme mt_rand()) pour obtenir un entier aléatoire dans une plage donnée, et random_int() lorsque vous avez besoin de valeurs cryptographiquement sécurisées :
<?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
?>Remarque : il n'existe pas de fonction
random()en PHP — les noms corrects sontrand(),mt_rand()etrandom_int().
Conclusion
Dans cet article, nous avons exploré certaines des fonctions mathématiques PHP les plus couramment utilisées et la façon dont elles peuvent servir à effectuer diverses opérations mathématiques. Que vous arrondissiez des nombres, réalisiez des calculs trigonométriques ou travailliez avec des fonctions logarithmiques, PHP propose un large éventail de fonctions pour vous aider à accomplir la tâche. Avec un peu de pratique, vous pourrez tirer parti de ces fonctions intégrées pour traiter efficacement des tâches numériques complexes dans vos applications PHP. Pour aller plus loin, consultez la référence complète PHP Math et le chapitre sur le formatage des nombres pour l'affichage.
Tableau de référence rapide
| Fonction | Signature | Type de retour | Exemple |
|---|---|---|---|
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) → entier sécurisé |