【发布时间】:2021-01-20 21:21:27
【问题描述】:
每天尝试从命令行运行某种形式的 PHP linting。
我已经尝试过 SonarLint - 在 PhpStorm 中很可爱,但遗憾的是他们显然已经停止支持命令行命令。
我尝试获取 PHPLint 和 php -l,但我不是 php 专家,并且正在为 composer 文件而苦苦挣扎。
最后我查看了 PhpStorm 检查 - 我可以让它创建一个包含 99 种错误类型的目录,但我必须编写一个工具来 grep 文件并查看 /count 错误、警告看看它们是否每天都在上升/下降,或者在 IDE 中检查,这两者都不是特别吸引人。
必须有一个工具可以产生一个很好的简单输出,我可以将其合并为构建管道的一部分,每天或每次构建后绘制错误/警告图形?
【问题讨论】:
-
PHPStan, Psalm -- 集成将在下一个主要的 PhpStorm 版本中提供(2020.3 -- 如果您现在想尝试,目前处于 EAP 阶段:blog.jetbrains.com/phpstorm/2020/10/phpstorm-2020-3-eap-2)。另外:Phan、NoVerify 等。您可以在 CLI 中运行它们中的任何一个/使其成为构建过程的一部分。
-
"最后我查看了 PhpStorm 检查 -... 但是我必须编写一个工具来 grep 文件并查看 /count 错误、警告以查看它们是否每天向上/向下” 您可以将结果保存到 JSON/XML format 中,使用 XML/JSON 库更容易解析(与纯文本输出相比)。
-
JetBrains 自己使用它(但他们使用TeamCity——他们自己的 CI 工具;所以他们有一些开箱即用的适当集成)。也许看看github.com/bentolor/idea-cli-inspector——它可以与 IntelliJ (Java) 一起使用.. 但也可以与 PHP 结果一起使用。另外:christianscheb.de/archives/808,dzone.com/articles/running-intellij-idea-in-jenkins
-
@LazyOne 是的,我已经找到了 XML 输出,这让事情变得容易多了,谢谢。也感谢 idea-cli-inspector 的发现,将进行调查。
标签: php phpstorm static-analysis sonarlint phplint