Si vous développez avec PHP depuis un certain temps, vous avez probablement rencontré le terme PSR-12. Il s’agit de l’une des normes de codage les plus largement acceptées dans la communauté PHP et vise à garantir la cohérence des bases de code PHP entre différents projets. Que vous travailliez seul ou en équipe, suivre le PSR-12 peut rendre votre code plus propre, plus lisible et plus facile à maintenir. Dans ce blog, nous expliquerons ce qu'est le PSR-12, pourquoi il est important et comment vous pouvez l'appliquer dans vos projets.
PSR-12 est un guide de style de codage pour PHP, développé par le PHP-FIG (Framework Interoperability Group). Il s'appuie sur la précédente norme PSR-2, fournissant un ensemble de règles mis à jour qui reflètent les pratiques PHP modernes et améliorent la cohérence entre les bases de code.
Considérez PSR-12 comme le modèle pour écrire du code PHP propre, lisible et maintenable. En suivant le PSR-12, les développeurs peuvent garantir que leur code adhère à une structure standardisée, ce qui facilite la collaboration avec d'autres et le travail sur des projets open source.
Les normes de codage comme PSR-12 ne consistent pas seulement à pinailler les espaces et les tabulations. Voici pourquoi ils sont importants :
Plongeons dans quelques-unes des règles clés énoncées par le PSR-12. Bien qu'il existe de nombreuses directives plus petites, voici celles qui se démarquent le plus.
PSR-12 exige que les espaces de noms et les déclarations d'utilisation suivent un ordre spécifique pour améliorer la clarté :
Exemple :
<?php namespace App\Controllers; use App\Models\User; use App\Repositories\UserRepository; class UserController { // Class implementation }
PSR-12 applique des règles strictes sur la manière dont les classes, propriétés et méthodes doivent être déclarées :
class UserController { private $userRepository; public function __construct(UserRepository $userRepository) { $this->userRepository = $userRepository; } } <h4> 4. Structures de contrôle </h4> <p>Les structures de contrôle comme if, for et switch doivent suivre certaines règles :</p> <ul> <li> <strong>Structure</strong> : Il doit y avoir un espace entre le mot-clé de contrôle et la parenthèse ouvrante. Les accolades {} doivent toujours être utilisées, même pour les instructions sur une seule ligne.</li> <li> <strong>Indentation</strong> : Tous les blocs à l'intérieur des structures de contrôle doivent être indentés d'un niveau (généralement quatre espaces). </li> </ul> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">if ($user->isAdmin()) { echo "User is an admin"; } else { echo "User is not an admin"; }
Les commentaires sont cruciaux pour expliquer pourquoi certaines parties du code existent. Le PSR-12 souligne la nécessité de commentaires appropriés et clairs.
<?php namespace App\Controllers; use App\Models\User; use App\Repositories\UserRepository; class UserController { // Class implementation }
Pour suivre le PSR-12 dans vos projets, vous pouvez respecter manuellement les directives lors de l'écriture du code, mais la meilleure façon de garantir la conformité est d'utiliser des outils automatisés.
Tout d'abord, familiarisez-vous avec ces pratiques générales :
S'assurer manuellement que votre code respecte le PSR-12 peut prendre beaucoup de temps, mais il existe des outils qui peuvent vous aider à automatiser ce processus.
L'un des outils les plus populaires pour garantir que votre code PHP respecte PSR-12 est PHP_CodeSniffer. Il analyse votre code et indique où vous vous écartez de la norme.
Pour l'installer et l'utiliser :
class UserController { private $userRepository; public function __construct(UserRepository $userRepository) { $this->userRepository = $userRepository; } }
Ensuite, exécutez-le sur votre code :
if ($user->isAdmin()) { echo "User is an admin"; } else { echo "User is not an admin"; }
Un autre outil utile est PHP CS Fixer. Il détecte non seulement les problèmes, mais peut également corriger automatiquement votre code pour se conformer au PSR-12.
// Fetch user from the repository $user = $userRepository->find($id); /* * If user is not found, throw an exception. * This helps in handling invalid user IDs. */ if (!$user) { throw new NotFoundException(); }
Exécutez le fixateur avec :
composer require "squizlabs/php_codesniffer=*"
Si vous utilisez PHPStorm, vous pouvez le configurer pour suivre PSR-12. Accédez à Paramètres -> Éditeur -> Style de code -> PHP et définissez la norme sur PSR-12.
Suivre PSR-12 dans vos projets PHP, c'est bien plus que simplement adhérer à des règles arbitraires. Il s'agit de rendre votre code plus propre, plus lisible et plus facile à maintenir, que vous travailliez seul ou en équipe. En suivant PSR-12, vous n'écrivez pas seulement du code pour vous-même mais pour l'ensemble de la communauté PHP.
L'adoption de cette norme est une étape vers l'écriture de code PHP professionnel, cohérent et maintenable. Utilisez les outils mentionnés pour faciliter le processus et observez à quel point vos projets deviennent propres et organisés !
Bon codage !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!