Web^ID
Contact Contact

31 08

retour à la liste des articles

Notre analyse de Laravel Pint

logo laravel pint

Laravel Pint est un outil permettant d'améliorer la qualité du code, notamment en suivant des standards comme le PSR-1, PSR-2, laravel, symfony, ...

 

Il permet d'analyser et de corriger en fonction du standard utilisé. Celui-ci est sans dépendance construit directement sur PHP-CS-Fixer. Il est très facile d'installer ce package il suffit d'exécuter cette commande :

composer require laravel/pint --dev

Laravel Pint possède un gros avantage par rapport à PHP-CS-Fixer, il n'a pas besoin de configuration pour être utilisé.

Cependant il est tout de même possible de créer un fichier pint.json à la racine du projet pour y configurer des préréglages :

{
    "preset": "psr12",
}

L'outil peut s'exécuter de plusieurs façons :

  • ./vendor/bin/pint
  • ./vendor/bin/pint --test
  • ./vendor/bin/pint -v

La première commande permet d'analyser le code et d'effectuer directement les modifications.

exemple commande analyse du code et modification

La seconde commande permet seulement d'analyser le code.

exemple commande analyse du code

La dernière commande permet d'analyser et d'effectuer les modifications tous en affichant les détails de celles-ci.

exemple analyse et modification du code avec détail

On peut voir que Laravel Pint implémente des règles comme braces, blank_line_before_statement. Il faut savoir que depuis le fichier configuration nous pouvons désactiver certaines règles.

{
    "preset": "psr12",
        "rules": {
            "braces": false
        }
}

Il est également possible d'isoler certain dossier ou fichier que nous voulons pas tester :

{
    "exclude": [
        "my-specific/folder"
    ]
}
{
    "notName": [
        "*-my-file.php"
    ]
}

Après avoir testé le package, je trouve que niveau performances (temps d'exécution, configuration, ...) il est au bien dessus de PHP-CS-Fixer.

Vous souhaitez démarrer rapidement ?
Besoin d'accompagnement ?

Vous voulez en savoir plus ou vous souhaitez nous parler de votre projet ?
Nous sommes à votre disposition !