phanalist
version for Sarif output.
PHP的性能静态分析仪非常易于使用。它可以帮助您在PHP代码中捕获常见错误。
安装Phanalist的最简单方法是使用安装脚本。
curl --proto ' =https ' --tlsv1.2 -sSf https://raw.githubusercontent.com/denzyldick/phanalist/main/bin/init.sh | sh它将自动下载您的平台可执行文件:
$ ~ /phanalist -V
phanalist 1.0.0还有其他多个安装选项。
要分析您的项目来源,您只需要运行phanalist :
~ /phanalist
在第一个运行phanalist.yaml将使用默认配置创建。它将在以下所有运行中重复使用。
还有一些其他参数:
config :配置文件的路径, ./phanalist.yaml phanalist.yaml是默认值。src :通往项目源的路径, ./src是默认值。output-format :用于输出结果的格式。可能的选项是text (默认), json和sarif 。summary-only :仅输出每个规则的违规量。quiet :抑制所有输出。可能的选项是:
enabled_rules包含要使用的规则列表。如果此列表为空,将使用所有规则。disable_rules包含要忽略的规则列表。rules特定的选项。默认配置文件是:
enabled_rules : []
disable_rules : []
rules :
E0007 :
check_constructor : true
max_parameters : 5
E0009 :
max_complexity : 10
E0010 :
max_paths : 200
E0012 :
include_namespaces :
- " App \ Service \ "
- " App \ Controller \ "
exclude_namespaces : []可用以下规则:
| 代码 | 姓名 | 默认选项 |
|---|---|---|
| E0000 | 示例规则 | |
| E0001 | 打开标签位置 | |
| E0002 | 空渔获 | |
| E0003 | 方法修饰符 | |
| E0004 | 大写常数 | |
| E0005 | 大写的班级名称 | |
| E0006 | 属性修饰符 | |
| E0007 | 方法参数计数 | check_constructor:true,max_parameters:5 |
| E0008 | 返回类型签名 | |
| E0009 | 循环复杂性 | max_complexity:10 |
| E0010 | N Path的复杂性 | max_complexity:200 |
| E0011 | 检测错误supression符号(@) | |
| E0012 | 服务与共享内存模型的兼容性 | include_namespaces:[“ app service ”], dubl_namespaces:[],, reset_interfaces:[“ resetInterface”] |
| E0013 | 未使用的私人方法 |
添加新规则是一项简单的任务,本教程说明了如何做。
在https://dev.to/denzyldick上阅读一系列章节,以了解该项目的内部内容。这是对该项目的出色,易于阅读的介绍。