composer 如何与静态分析工具 (PHPStan, Psalm) 集成?

composer通过自动加载支持phpStan和Psalm静态分析,需配置autoload并运行dump-autoload;2. 安装PHPStan和Psalm为开发依赖,分别创建phpstan.neon和psalm.xml配置文件;3. 在composer.json中添加analyse脚本命令,实现一键执行静态分析,便于CI集成。

composer 如何与静态分析工具 (PHPStan, Psalm) 集成?

Composer 本身不直接执行静态分析,但可以通过配置自动加载和脚本命令,让 PHPStan 和 Psalm 正确识别项目中的类、函数和命名空间。关键在于利用 Composer 生成的自动加载机制,并在工具中正确引用。

1. 确保 Composer 自动加载可用

PHPStan 和 Psalm 都需要读取 Composer 的 autoload 信息来解析类文件路径。确保你的 composer.json 中定义了正确的自动加载规则:

  • “autoload”: { “psr-4”: { “app”: “src/” } }
  • 运行 composer dump-autoload 生成最新的自动加载文件

这两个工具会自动读取 vendor/autoload.php,因此只要 Composer 的 autoload 配置完整,静态分析工具就能找到类定义。

2. 安装并配置 PHPStan

推荐通过 Composer 安装 PHPStan 到开发依赖:

立即学习PHP免费学习笔记(深入)”;

 composer require --dev phpstan/phpstan 

在项目根目录创建 phpstan.neon 配置文件

 parameters:   level: 8   paths:     - src/ 

如果项目使用框架或自定义类映射,可添加扫描目录:

 parameters:   scanDirectories:     - vendor/myorg/mylib 

3. 安装并配置 Psalm

同样使用 Composer 安装 Psalm:

composer 如何与静态分析工具 (PHPStan, Psalm) 集成?

集简云

软件集成平台,快速建立企业自动化与智能化

composer 如何与静态分析工具 (PHPStan, Psalm) 集成? 22

查看详情 composer 如何与静态分析工具 (PHPStan, Psalm) 集成?

 composer require --dev vimeo/psalm 

初始化配置:

 ./vendor/bin/psalm --init 

Psalm 会自动生成 psalm.xml,它默认读取 Composer 的 autoload 设置。如有特殊路径,可在 <projectFiles> 中添加包含或排除规则。

4. 添加 Composer 脚本快捷运行

composer.json 中添加脚本,便于统一调用:

 "scripts": {   "analyse": [     "phpstan analyse",     "psalm"   ] } 

之后可通过命令一键执行:

 composer analyse 

这有助于集成到 CI 流程中,保证代码提交前经过静态检查。

基本上就这些。只要 Composer 的自动加载设置正确,PHPStan 和 Psalm 就能顺利工作。

以上就是

上一篇
下一篇
text=ZqhQzanResources