PHP CodeSniffer是一个非常好的工具,可以帮助我们检查PHP源代码。但是CodeSniffer的报告并不容易阅读。
我发现CodeSniffer可以输出'Checkstyle'xml报告。这是用Checkstyle xml报告可视化PHP代码的任何方式,这样每个开发人员都可以在一个页面中读取代码和报告吗?
事实上,我找到了一个名为phpUnderControl的工具,它看起来像一个非常好的持续集成工具,里面的东西可以满足我的要求。但我没有计划改变我的持续集成工具(我正在使用Apache Continuum)。
因此,如果有人能告诉我一个简单的工具或插件,那将是最好的。
感谢。
答案 0 :(得分:1)
这真的是一个评论/问题,但SO认为它太长了所以我会把它作为答案:
假设您想要输出这样的输出:
$ phpcs --report=checkstyle /path/to/code
<?xml version="1.0" encoding="UTF-8"?>
<checkstyle version="1.0.0">
<file name="/path/to/code/myfile.php">
<error line="2" column="1" severity="error" message="Missing file doc comment" source="PEAR.Commenting.FileComment"/>
<error line="20" column="43" severity="error" message="PHP keywords must be lowercase; expected "false" but found "FALSE"" source="Generic.PHP.LowerCaseConstant"/>
<error line="47" column="1" severity="error" message="Line not indented correctly; expected 4 spaces but found 1" source="PEAR.WhiteSpace.ScopeIndent"/>
<error line="47" column="20" severity="warning" message="Equals sign not aligned with surrounding assignments" source="Generic.Formatting.MultipleStatementAlignment"/>
<error line="51" column="4" severity="error" message="Missing function doc comment" source="PEAR.Commenting.FunctionComment"/>
</file>
</checkstyle>
并呈现原始源代码的版本,并以某种方式突出显示指定的部分,然后我认为您将“自己动手”。
你必须编写一个脚本,它将代码库中源文件的路径作为输入参数(例如path / to / code)和一块“checkstyle”XML作为输入(通过STDIN),并将文件的内容(到STDOUT)呈现为HTML标记。
里面文件的主体应该在PRE元素中(以保留格式),每个指定的行+列都有一个错误/警告“列表元素”的HREF链接将位于HTML页面的底部(I '我不确定在PRE元素中可以使用哪种加色/突出显示。)
这是一个好主意 - 我想自己拥有这样的脚本/工具/实用程序!如果我开始编写一个,我保证在Github上发布它并在这里添加一个链接。
如果你找到/写一个,请回答你自己的问题,好吗?