2.10. 结果缓存

未匹配的标注

结果缓存

PHPStan 会缓存分析结果,因此后续运行速度更快。你应该始终分析整个项目 —— 传给 analyse 命令 的路径列表每次应该相同以便利用缓存。如果每次运行的的路径不同,则会完全重建缓存。

你可能注意到结果缓存有时不会被保存,即使上次 PHPStan 运行后什么都没改变它也会进行完整分析。如果分析结果包含某些严重的错误,例如解析错误,缓存不会被用于下次运行,因为文件依赖树可能会不完整。

结果缓存被保存在 %tmpDir%/resultCache.php了解更多关于 tmpDir 配置 »

结果缓存内容

  • 最近一次执行的项目完整分析。至少每7天执行一次完整分析。
  • 使旧缓存失效的分析变量。如果以下任意值发生变化,会再次执行完整分析。
  • 最近一次运行的报错
  • 项目文件的依赖树。如果文件 A.php 上次运行后被修改了,所有调用 A.php 的文件,或者 在 A.php 引用的所有符号(symbol) 会被再次分析。

清理结果缓存

为了清理结果缓存的当前状态,例如你在开发 自定义扩展 但结果缓存太老了,你可以运行 clear-result-cache 命令。了解更多 »

当使用 --debug 运行时结果缓存也会失效。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 查看所有版本


暂无话题~