L'outil PHP Coding Standards Fixer (PHP CS Fixer) corrige votre code pour suivre les normes ; que vous souhaitiez suivre les normes de codage PHP telles que définies dans le PSR-1, PSR-2, etc., ou d'autres normes communautaires comme celle de Symfony. Vous pouvez également définir le style de votre (équipe) via la configuration.
Il peut moderniser votre code (comme convertir la fonction pow
en opérateur **
sur PHP 5.6) et (micro) l'optimiser.
Si vous utilisez déjà un linter pour identifier les problèmes de normes de codage dans votre code, vous savez que les résoudre à la main est fastidieux, en particulier sur les grands projets. Cet outil non seulement les détecte, mais les corrige également pour vous.
Remarque Chaque nouvelle version de PHP nécessite un énorme effort pour prendre en charge la nouvelle syntaxe. C'est pourquoi la dernière version de PHP n'est peut-être pas encore prise en charge. Si vous en avez besoin, envisagez de soutenir le projet de toute manière pratique, par exemple en contribuant au code ou en examinant les PR existants. Pour exécuter PHP CS Fixer sur des versions non encore prises en charge "à vos propres risques" - utilisez PHP_CS_FIXER_IGNORE_ENV.
La méthode recommandée pour installer PHP CS Fixer est d'utiliser Composer dans un fichier composer.json
dédié dans votre projet, par exemple dans le répertoire tools/php-cs-fixer
:
mkdir -p tools/php-cs-fixer
composer require --working-dir=tools/php-cs-fixer friendsofphp/php-cs-fixer
Ou en utilisant le composer.json
principal :
composer require --dev friendsofphp/php-cs-fixer
Pour plus de détails et d’autres méthodes d’installation, consultez les instructions d’installation.
Vous pouvez utiliser des images Docker prédéfinies pour exécuter php-cs-fixer
.
docker run -it --rm -v $(pwd):/code ghcr.io/php-cs-fixer/php-cs-fixer:${FIXER_VERSION:-3-php8.3} fix src
$FIXER_VERSION
utilisé dans l'exemple ci-dessus est un identifiant d'une version que vous souhaitez utiliser, qui est basé sur les versions Fixer et PHP combinées. Il existe différentes balises pour le niveau SemVer de chaque Fixer et la version PHP avec la syntaxe <php-cs-fixer-version>-php<php-version>
. Par exemple:
3.57.0-php7.4
3.57-php8.0
3-php8.3
En supposant que vous ayez installé PHP CS Fixer comme indiqué ci-dessus, vous pouvez exécuter la commande suivante pour réparer les fichiers PHP dans le répertoire src
:
tools/php-cs-fixer/vendor/bin/php-cs-fixer fix src
Voir utilisation, liste des règles intégrées, liste des ensembles de règles et documentation du fichier de configuration pour plus de détails.
Si vous devez appliquer des styles de code qui ne sont pas pris en charge par l'outil, vous pouvez créer des règles personnalisées.
Des plugins dédiés existent pour :
Le PHP CS Fixer est maintenu sur GitHub à l'adresse https://github.com/PHP-CS-Fixer/PHP-CS-Fixer. Les rapports de bogues et les idées sur les nouvelles fonctionnalités y sont les bienvenus.
Vous pouvez nous joindre dans les discussions GitHub concernant le projet, la configuration, les améliorations possibles, les idées et les questions. S'il vous plaît, visitez-nous là-bas!
L'outil est livré avec un certain nombre de correcteurs intégrés, mais tout le monde est plus que bienvenu pour en contribuer davantage.