PHPCodeSniffer 是否生成 HTML 报告?
如果不?如何?
目前,我可以运行 PHPCodeSniffer,但它只生成 XML 文件并在终端中显示结果。
如何生成 HTML 报告,如 phpunit 中的覆盖率和单元测试报告。
目前我使用 PHPCheckStyle 因为它生成 html 报告,但我也想尝试 PHPCodeSniffer 以了解哪个是最好的。
PHPCodeSniffer 是否生成 HTML 报告?
如果不?如何?
目前,我可以运行 PHPCodeSniffer,但它只生成 XML 文件并在终端中显示结果。
如何生成 HTML 报告,如 phpunit 中的覆盖率和单元测试报告。
目前我使用 PHPCheckStyle 因为它生成 html 报告,但我也想尝试 PHPCodeSniffer 以了解哪个是最好的。
另一种解决方案(但可能不是最简单的)是使用提供 PHP 代码嗅探器集成的持续集成系统。
例如,phpUnderControl提供了一个很好的界面来查看报告。
尚未提供 HTML 报告。但是,有一种解决方法可以完成工作。
您可以将报告导出为 XML 并使用 DOM Parser 读取数据并自行生成 HTML 版本。这是一个快速教程,可帮助您入门。
实际上,编写自己的报告非常简单。
如果您从 CLI 运行,您可以使用独特的方法实现您自己的报告类,并从命令 ligne 调用它。对于名为 Xxx 的报告:
class PHP_CodeSniffer_Reports_Xxx implements PHP_CodeSniffer_Report
{
/**
* Prints all errors and warnings for each file processed.
*
* Errors and warnings are displayed together, grouped by file.
*
* @param array $report Prepared report.
* @param boolean $showSources Show sources?
* @param int $width Maximum allowed lne width.
* @param boolean $toScreen Is the report being printed to screen?
*
* @return string
*/
public function generate(
$report,
$showSources=false,
$width=80,
$toScreen=true
) {
...
}
}
如果您从 Web 服务器运行,该PHP_CodeSniffer.getFilesErrors()
方法会为您提供一系列不错的错误,其中包含生成报告所需的所有内容。
HTML 报告对我有用。只需根据 --help 使用:
phpcs src/AppBundle --generator=HTML > index.html
在 index.html 中显示结果