当前位置: 首页 > 工具软件 > PHPMD > 使用案例 >

php生成md文件怎么打开,PHPMD命令行

阴禄
2023-12-01

格式 phpmd [filename|directory] [report format] [ruleset file]:

```bash

mapi@arwen ~ $ phpmd PHP/Depend/DbusUI/ xml rulesets/codesize.xml

```

```xml

endline="224"

rule="TooManyMethods"

ruleset="Code Size Rules"

package="PHP_Depend\DbusUI"

class="PHP_Depend_DbusUI_ResultPrinter"

priority="3">

This class has too many methods, consider refactoring it.

```

可以给PHPMD传一个文件名,也可以是一个PHP代码目录。

PHPMD Phar包里面包含了规则集文件,虽然"rulesets/codesize.xml"参数看起来很像一个文件。

## 命令行选项

- 默认输出是XML格式,你可以把它重定向到一个文件中,然后对其XSLT,或者做些其他操作。

- 对于内建规则集,可以使用简短的名字,比如:phpmd PHP/Depend/DbusUI/ xml codesize

- 命令行界面也接受附加参数:

- --minimumpriority - 规则优先级; 更低优先级的规则不会使用。

- --reportfile - 输出报告到文件,代替默认的STDOUT。

- --suffixes - 有效文件后缀名,以逗号分隔多个文件。

- --exclude - 忽略的目录,以逗号分隔多个目录。

- --strict - 同时报告那些以@SuppressWarnings注释掉的节点。(注:@SuppressWarning意为禁止告警)

```bash

#An example command line:

phpmd PHP/Depend/DbusUI xml codesize --reportfile phpmd.xml --suffixes .php

```

## 使用多个规则集

PHPMD使用的所谓规则集,配置/定义了应用到被测代码上的一组规则。PHPMD默认发布的版本中包含了一些规则集,可以直接使用。可以调用PHPMD命令,其中包含了规则集名:

```bash

~ $ phpmd /path/to/source text codesize

```

可以使用逗号传递多个规则名:

```bash

~ $ phpmd /path/to/source text codesize,unusedcode,naming

```

也可以在内建规则集中混合自定义规则集:

```bash

~ $ phpmd /path/to/source text codesize,/my/rules.xml

```

这就是说,可以自定义规则集组合检查代码。

## 退出码

PHPMD命令行工具当前定义了三个退出码。

- 0 表示一切正常。这意味着没有错误/异常,同时在本次测试中PHPMD没有检查到任何违规代码。

- 1 表示出现错误/异常,打断了PHPMD执行过程。

- 2 这个退出码表明PHPMD执行完了测试过程,没有被错误/异常打断。但是在分析过的代码里检测到了违规代码。

## 渲染器

目前 PHPMD 带有以下三个渲染器:

- xml, 把报告格式化为XML

- text, 简单文本格式

- html, 简单HTML,但可能有问题。

 类似资料: