PHPStan 命令行使用完全指南
2025-07-06 03:01:36作者:段琳惟
PHPStan 是一款强大的 PHP 静态分析工具,通过命令行界面提供了丰富的功能选项。本文将全面介绍 PHPStan 的命令行使用方法,帮助开发者高效地进行代码质量检查。
基本分析命令
PHPStan 的核心功能通过 analyse
命令实现:
vendor/bin/phpstan analyse [选项] [<路径>...]
路径参数说明
可以指定一个或多个文件或目录路径:
- 支持相对路径和绝对路径
- 相对路径基于当前工作目录解析
- 目录扫描会遵循配置文件中的相关设置
常用选项详解
规则级别设置 (-l|--level)
- 指定分析规则的严格程度
- 取值范围通常为 0-8,数字越大检查越严格
- 示例:
-l 5
表示使用第5级规则集
配置文件指定 (-c|--configuration)
- 指定自定义配置文件路径
- 支持相对路径和绝对路径
- 示例:
-c config/phpstan.neon
内存限制设置 (--memory-limit)
- 设置 PHPStan 运行时的内存限制
- 格式与 php.ini 相同
- 示例:
--memory-limit 2G
高级功能选项
基线文件生成
vendor/bin/phpstan analyse --generate-baseline
- 生成基线文件记录当前已知错误
- 默认生成
phpstan-baseline.neon
文件 - 可使用
--allow-empty-baseline
允许生成空基线
调试模式
--debug 选项
- 显示每个分析文件的处理过程
- 遇到内部错误时打印堆栈跟踪
- 自动禁用结果缓存和并行处理
详细输出 (-v/-vv/-vvv)
- 显示更多调试信息
-vvv
会输出与diagnose
命令相同的信息- 结合
--debug
可识别性能瓶颈
编辑器模式
--tmp-file 和 --instead-of
- 专为编辑器集成设计
- 允许分析临时文件而非原始文件
- 提高开发体验
辅助命令
清理结果缓存
vendor/bin/phpstan clear-result-cache
- 清除分析结果缓存
- 开发自定义扩展时特别有用
- 共享部分
analyse
命令的选项
诊断命令
vendor/bin/phpstan diagnose
- 输出运行环境诊断信息
- 包括 PHP 版本、PHPStan 版本等
- 扩展可实现
DiagnoseExtension
接口添加自定义信息
实用技巧
-
简化命令:满足条件时可直接运行
vendor/bin/phpstan
无需参数- 当前目录有
phpstan.neon
或phpstan.neon.dist
- 配置文件中已设置
paths
和level
参数
- 当前目录有
-
性能优化:
- 默认禁用 Xdebug 提升性能
- 需要调试时可使用
--xdebug
选项
-
输出控制:
--ansi
/--no-ansi
强制控制彩色输出--quiet
静默模式只关注退出码
-
版本检查:
--version
快速查看当前 PHPStan 版本
通过熟练掌握这些命令行选项,开发者可以更高效地利用 PHPStan 进行代码质量分析,并根据项目需求灵活调整分析行为。