Obtenez le nombre d'erreurs pour chaque niveau PHPSTAN!
Tout d'abord, nous examinons la racine du projet pour le fichier phpstan.neon .
/src , /app , /tests , etc.Ensuite, nous exécutons PHPSTAN pour chaque niveau de 0 à 8. Nous comptons les erreurs et les affichons dans une table.
composer require tomasvotruba/phpstan-bodyscan --devExécutez l'outil dans votre projet. Cela prendra un certain temps, car il exécutera une analyse complète du phpstan pour chaque niveau.
vendor/bin/phpstan-bodyscan↓
Pour obtenir des erreurs qui comptent par niveau:
+-------+-------------+-----------+
| Level | Error count | Increment |
+-------+-------------+-----------+
| 0 | 0 | - |
| 1 | 35 | + 35 |
| 2 | 59 | + 24 |
| 3 | 59 | - |
| 4 | 120 | + 61 |
| 5 | 120 | - |
| 6 | 253 | + 133 |
| 7 | 350 | + 97 |
| 8 | 359 | + 9 |
+-------+-------------+----------- ; vendor/bin/phpstan-bodyscan --no-ignorevendor/bin/phpstan-bodyscan --bareNous vous sommes couverts:
vendor/bin/phpstan-bodyscan --json↓
[
{
" level " : 0,
" error_count " : 0,
" increment_count " : 0
},
{
" level " : 1,
" error_count " : 5,
" increment_count " : 5
},
{
" level " : 2,
" error_count " : 25,
" increment_count " : 20
}
]Êtes-vous intéressé uniquement par quelques niveaux? Vous pouvez limiter les plages par les options:
vendor/bin/phpstan-bodyscan run --min-level 0 --max-level 3Expérimental!
Êtes-vous intéressé par l'apprentissage de la couverture de la déclaration de param, de retour et de type de propriété du projet?
Exécuter la commande type-coverage ↓
vendor/bin/phpstan-bodyscan type-coverage --json↓
[
{
" category ": "param type",
"relative_covered": 100 ,
"total_count": 54
},
{
"category": "property type",
"relative_covered": 100 ,
"total_count": 1
},
{
"category": "return type",
"relative_covered": 100 ,
"total_count": 33
},
{
"category": "strict declares",
"relative_covered": 100 ,
" total_count": 18
}
]Basé sur le package de couverture de type.
Certains projets doivent charger le fichier .env pour exécuter phpstan. Vous pouvez le faire comme ceci:
vendor/bin/phpstan-bodyscan run --env-file some-parameters.env L'exécution de PhpStan sur un nouveau projet que vous ne connaissez pas pourrait s'écraser. Pour enregistrer les données des niveaux finis, nous les vidons dans le fichier bodyscan-log.txt .
Si l'exécution se bloque pour une raison quelconque, la sortie d'erreur PHPSTAN est également jetée dans le même fichier.
Codage heureux!