问题标签 [phpcodesniffer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
403 浏览

wordpress - phpcs WordPress 规则集错误检测到使用未清理的输入变量:$_FILES

我有一个文件上传的功能。在我运行 PHP_CodeSniffer phpcs 时上传文件时出现错误。我正在运行 WordPress 规则集。

检测到使用未清理的输入变量:$_FILES

谁能告诉我如何解决它。

提前致谢。

0 投票
1 回答
89 浏览

php - phpcs 一直扫描整个项目而不是指定目录

我正在尝试在特定目录上运行 PHP 代码嗅探器,但 PHP 代码嗅探器会忽略该<files>标志并扫描整个项目。

这是我正在运行的命令: ./vendor/bin/phpcs -p . --extensions=php docs/

我正在使用当前版本的 PHP 嗅探器(3.4.0)并且docs/是一个真实的目录。

0 投票
3 回答
1176 浏览

php - PHP 多种函数返回类型 String|int

我遇到了一个不寻常的场景,我的函数返回多种类型string or integer。我正在尝试声明返回类型。谁能建议我在这里宣布的最佳做法。

我知道 null 或其他类型我可以使用这样的东西

但我的函数如下所示返回字符串或整数

现在,我想知道我应该如何用返回类型声明我的函数

或者

我也想知道在这种情况下的想法/建议/最佳实践,其中将返回多种返回类型

0 投票
0 回答
630 浏览

phpstorm - 自定义编码标准规则集不适用于 PhpStorm 中的代码嗅探器

我在PhpStorm 2019.2.3中有一个项目,我想将自定义编码标准规则集与 PHP Code Sniffer 一起使用。当我选择提供的编码标准时,代码嗅探器按预期工作,但是当我更改为我的自定义规则集时,所有嗅探器都会消失

我复制了整个 /PSR2 文件夹/PHP_CodeSniffer-3.4.2/src/Standards/,将其命名PSR2-Custom并编辑为ruleset.xml

我认为它的作用是它使用 PSR2 编码标准并排除了两个包含的规则,受phpcs 启发:如何修改 PSR2 以检查大括号与方法是否在同一行?https://github.com/squizlabs/PHP_CodeSniffer/issues/703

这些是我的设置:

A) 设置 > 语言和框架 > PHP > 质量工具:

带有 phpcs.bat 路径的本地配置(PHP_CodeSniffer-3.4.2,手动下载)(如文档所述)

B) 设置 > 编辑器 > 检查:PHP > 质量工具 > PHP 代码嗅探器验证:

-> 在“编码标准”下拉列表中选择 PSR2:标记嗅探
-> 在“编码标准”下拉列表中选择 PSR2-Custom:不再标记嗅探

我在 SO 上检查了类似的问题,但没有一个帮助我解决了我的问题,例如 自定义 PMD 规则集不起作用

我想不通,我哪里出错了。我的规则集配置有问题吗?感谢您的帮助。

0 投票
1 回答
243 浏览

php - Php Codesniffer 应该忽略大写字母和句号

我正在为现有项目实施 PHPCS。我想检查函数是否有文档块。

我目前正在使用以下规则:

但是我遇到了很多问题,即参数注释应该以大写字母开头并以句号结尾。

我怎样才能使关于大写字母和句号的规则不那么严格

编辑:目前代码块也想对齐参数。@param array这会在和之间产生很多难看的空白$parameter。我可以在 phpcs 和 phpcbf 中删除此规则吗?

0 投票
1 回答
132 浏览

php - 是否可以为不同的文件设置不同的 phpcs 配置值?

我将PHP_CodeSnifferPHPCompatibility一起使用,我想为不同的文件设置不同的配置值。

对于某些文件,我需要以下配置:

对于其他文件:

我想从我的phpcs.xml文件中做到这一点。这可能吗?

0 投票
1 回答
548 浏览

php - phpcs - 防止显示“多行函数调用的左括号必须是该行的最后一个内容”

此代码发生错误:

我正在使用phpcs vscode,需要phpcs的所有默认规则,除了这个!

你能告诉我怎么做吗

  1. 编写一个包含所有默认规则的 phpcs
  2. 如何排除此规则
0 投票
0 回答
180 浏览

phpstorm - PHP_CodeSniffer 在 PhpStorm 中返回退出状态 1 或 2,而不是显示有关违规的警告

问题

PHP_CodeSniffer 在我的控制台中运行良好,但是当我尝试在 PhpStorm 中使用它时出现问题。当我在编辑器中工作时,应该给我有关违规的警告。目前它只是返回phpcs: exit status 1phpcs: exit status 2在事件日志中。

是说明问题的屏幕截图。这是来自 PhpStorm 的博客文章的链接,说明它应该如何工作

我试过的

我在全球范围内重新安装了最新版本的 PHP_CodeSniffer 并在我的 PhpStorm 首选项中重新配置了该工具,但没有任何运气。

问题

通过向我显示有用的警告而不是在事件日志中返回退出状态代码,我可以做些什么来使 PHP_CodeSniffer 再次工作?

0 投票
1 回答
162 浏览

codesniffer - 不鼓励类使用 PHPCS

假设我有这些课程:

  • Old_Class
  • New_Class

如果这存在,或者->something(new Old_Class())我想要代码嗅探来警告“发现旧类用法,建议改用新类”。 Old_Class::staticMethod()$oldClass->methodCall()

我发现了这个嗅探Generic.PHP.ForbiddenFunctions,但它似乎只捕捉到内置的 php 函数is_array, is_null, etc

我需要为此编写自定义嗅探吗?

如果是这样,我token应该在该register()功能中添加什么才能赶上?

0 投票
1 回答
1163 浏览

php - PHP CodeSniffer 错误:phpcs 报告包含无效的 json

我想将 PHP CodeSniffer 添加到 VScode。

在 VScode 中,我收到错误“phpcs:phpcs 报告包含无效的 json”

但是,当我在终端中运行以下命令时:

PHP Codesniffer 使用以下终端输出按预期工作:

输出中没有无效的 JSON,我不确定如何继续使其正常工作。