PHP : Faire une moyenne des valeurs d’un tableau
Nous sommes couramment amenés à calculer la moyenne de plusieurs valeurs : calculer la note moyenne d’une classe à partir des notes de chaque élève, calculer le panier moyen d’une boutique, calculer la température moyenne sur une période donnée, calculé le temps moyen passé sur une page, les exemples sont nombreux.
En stockant vos valeurs dans un tableau PHP, vous pourrez facilement calculer la moyenne des valeurs.
Dans cet article, nous allons examiner comment faire une moyenne des valeurs d’un tableau en PHP en utilisant une fonction personnalisée. Nous allons également couvrir quelques astuces pour vous aider à personnaliser la précision de vos résultats.
Calculer la moyenne d’un tableau en PHP
Petit rappel : pour calculer une moyenne, il faut d’abord additionner toutes les valeurs puis diviser le résultat par le nombre total de valeur. Ainsi, si vous calculez la moyenne de vos notes, vous devrez faire la somme de toutes vos notes puis divisez ce résultat par le nombre de notes.
Pour calculer la moyenne d’un tableau en PHP, vous allez utiliser :
- la fonction
array_sum()
pour additionner toutes les valeurs du tableau, - la fonction
count()
pour obtenir le nombre total de valeur
Cela devrait vous donner une moyenne de 4.33 pour les notes de l’exemple donné. Toutefois, vous remarquerez que le résultat est un nombre décimal avec beaucoup de chiffres après la virgule. Pour obtenir un résultat plus précis et plus lisible, vous pouvez utiliser la fonction round()
pour arrondir le résultat à un certain nombre de décimales.
Maintenant, le résultat est arrondi à deux décimales, ce qui est plus facile à lire.
Créer une fonction pour calculer la moyenne d’un tableau en PHP
Plutôt que d’écrire le même code à chaque fois que vous avez besoin de calculer la moyenne d’un tableau, il est plus pratique de créer une fonction que vous pouvez appeler à tout moment. Voici une fonction simple qui calcule la moyenne d’un tableau en utilisant les méthodes que nous avons décrites précédemment :
Cette fonction prend un tableau en entrée et renvoie la moyenne calculée. Vous pouvez l’appeler comme suit :
Cela devrait vous donner la même réponse que l’exemple précédent.
Personnaliser la précision de la moyenne
Dans certains cas, vous souhaiterez peut-être afficher la moyenne avec une précision différente de celle par défaut de PHP. Pour ce faire, vous pouvez ajouter un deuxième argument à votre fonction get_average()
qui définit le nombre de décimales que vous souhaitez afficher. Vous pouvez ensuite utiliser cette valeur dans la fonction round()
pour arrondir le résultat à un nombre spécifique de décimales.
Voici une version mise à jour de notre fonction get_average()
qui permet de personnaliser la précision de la moyenne :
Notez que nous avons ajouté une nouvelle variable $precision
à la fonction. Si vous ne spécifiez pas cette variable lors de l’appel de la fonction, elle prendra une valeur par défaut de 2. Cela signifie que la moyenne sera arrondie à deux décimales.
Vous pouvez maintenant appeler la fonction get_average()
avec un deuxième argument pour personnaliser la précision de la moyenne :
Dans l’exemple ci-dessus, le premier appel utilise la précision par défaut de 2 décimales. Le deuxième appel spécifie une précision de 0 décimale, de sorte que la moyenne est arrondie à l’entier le plus proche. Le troisième appel spécifie une précision de 3 décimales, donnant une réponse plus précise.
En bref…
Faire la moyenne des valeurs d’un tableau en PHP peut être très utile dans de nombreuses situations. En utilisant la fonction array_sum()
et count()
pour calculer la moyenne, et la fonction round()
pour arrondir le résultat, vous pouvez obtenir des résultats précis et lisibles. En encapsulant cette logique dans une fonction personnalisée, vous pouvez facilement réutiliser le code pour calculer la moyenne de différents tableaux avec une précision personnalisable.
Si cet article vous a aidé, si vous avez des questions ou des améliorations à proposer, n'hésitez pas à me laisser un commentaire en bas de page !