Tu veux afficher des chiffres de manière simplifiée dans ton application Laravel, comme sur YouTube ou Instagram ? Par exemple, transformer 1 000 en 1K, 1 000 000 en 1M, etc.
Bonne nouvelle : c’est simple ! Dans ce tuto rapide, on va créer une fonction globale que tu pourras réutiliser partout dans ton application Laravel.
Pourquoi créer une fonction globale dans Laravel ?
Créer une fonction globale permet de :
- Simplifier ton code en évitant les répétitions.
- Faciliter les modifications futures.
- Améliorer la lisibilité et la maintenance du projet.
C’est pratique, rapide, et très simple à mettre en place.
Étape 1 : Créer un fichier « helpers.php »
Commence par créer un dossier Helpers
dans le dossier app
de Laravel si celui-ci n’existe pas déjà. Ensuite, crée un fichier nommé helpers.php
à cet endroit :
app/Helpers/helpers.php
Voici le contenu du fichier avec notre fonction magique :
if (! function_exists('format_number')) {
/**
* Formate un nombre en version courte (1K, 1M, 1B...).
*
* @param int|float $number
* @return string
*/
function format_number($number)
{
if ($number < 1000) {
return $number;
} elseif ($number < 1000000) {
return round($number / 1000, 1) . 'K';
} elseif ($number < 1000000000) {
return round($number / 1000000, 1) . 'M';
} else {
return round($number / 1000000000, 1) . 'B';
}
}
}
Étape 2 : Charger automatiquement ta fonction globale
Ouvre ton fichier composer.json
situé à la racine de ton projet Laravel, et cherche la section autoload
. Ajoute le chemin vers ton fichier comme ceci :
"autoload": {
"files": [
"app/Helpers/helpers.php"
]
}
Puis, exécute la commande suivante dans ton terminal afin d’appliquer les changements :
composer dump-autoload
Maintenant ta fonction est chargée automatiquement dans toute ton application Laravel !
Étape 3 : Utiliser ta fonction partout
Tu peux désormais utiliser ta fonction format_number
aussi bien dans tes contrôleurs que dans tes vues Blade très facilement.
Par exemple, dans un contrôleur :
public function dashboard()
{
$followers = 4500;
$formattedFollowers = format_number($followers);
return view('dashboard', compact('formattedFollowers'));
}
Et directement dans une vue Blade :
<p>{{ format_number(1250) }} abonnés</p>
Résultat :
1.3K abonnés
Voilà, tu as désormais une fonction globale simple et efficace pour afficher des chiffres raccourcis à la manière de YouTube ou Instagram dans ton application Laravel. N’hésite pas à l’adapter à tes besoins spécifiques ou à la rendre plus sophistiquée selon les cas.
Bonne programmation ! 🚀