PHPStan Banned Code 使用指南
项目介绍
PHPStan Banned Code 是一个基于 PHPStan 的扩展库,旨在帮助开发者检测并禁止在项目中使用特定的函数或语句,比如调试工具(如 var_dump
)、危险的执行命令(如 exec
, system
)等,确保代码质量,避免非标准或潜在不安全的代码片段混入生产环境。通过将此扩展集成到持续集成(CI)流程中,可以自动检查代码是否符合团队或项目的编码规范。
项目快速启动
安装
要开始使用 PHPStan Banned Code,首先需要将其作为开发依赖添加到您的项目中。这可以通过 Composer 来完成:
composer require --dev ekino/phpstan-banned-code
如果您已经安装了 PHPStan Extension Installer,那么安装完毕即可。否则,您需要手动在项目的 PHPStan 配置文件(通常是 .phpstan.neon
或 .phpstan.neon.dist
)中包含该扩展:
includes:
- vendor/ekino/phpstan-banned-code/extension.neon
基本配置与运行
一旦安装并配置好,就可以通过 PHPStan 运行分析来检测禁止使用的代码了:
vendor/bin/phpstan analyse
应用案例和最佳实践
禁止特定函数的使用
例如,如果您想禁止项目中使用 var_dump
和 exit
函数,可以在配置中添加以下条目:
parameters:
banned_code:
functions:
- var_dump
- exit
自定义规则以适应项目需求
根据项目具体需求定制禁用列表,比如禁止在非测试文件中使用测试相关的命名空间导入:
parameters:
banned_code:
use_from_tests: true
强制不可忽视的错误
确保所有由该扩展报告的错误都不能被忽略,保持代码的纯净度:
parameters:
banned_code:
non_ignorable: true
典型生态项目结合
在PHP生态系统中,PHPStan Banned Code 可与一系列其他质量保证工具协同工作,如 PSR-12 Coding Standard 检查器、 PHPUnit 测试框架以及自动化构建工具如 GitLab CI/CD 或 Jenkins。通过将它集成进这些流程,可以实现从编码到部署全流程的质量控制。例如,在 GitLab 的 .gitlab-ci.yml
中添加一个步骤来运行 PHPStan 分析,确保每次提交都遵循项目约定:
phpstan:
stage: analyze
script:
- composer install --no-dev
- vendor/bin/phpstan analyse
这样不仅提升了代码质量,还能教育团队成员遵循良好的编码习惯,减少技术债务。
以上便是 PHPStan Banned Code 的基本使用指南,它为您提供了强大的工具来维护代码健康,促进团队之间的标准化编码实践。在实际项目应用中,根据团队的特定需求调整配置,以达到最佳的效果。