问题标签 [phpcs]

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 投票
0 回答
818 浏览

php - 实现接口时 Java 的 @Override 的 PHP 等效项(用于检查样式)

PHPCS正在抱怨php doc已经在接口中php doc提供的接口的实现。

我的问题是,我如何干净地PHPCS忽略接口方法实现,类似于 java 的@Override

下面是我如何在 java 中执行此操作以及我在 php 中的示例。我的目标是能够对来自已经有 php doc 的接口的方法忽略它。如果该方法不是一个实现,那么仍然需要提供一个 php 文档。

它是如何在 Java 中工作的

在java中,我可以有这样的接口:

以及一个实现它的类:

有了上述内容,java 可以毫无问题地获取 java 文档,并且 @Override 有助于通过任何检查样式检查。

我在 PHP 中拥有的东西

在php中,我有一个类似的界面:

使用一个实现它的类,例如:

0 投票
1 回答
450 浏览

php - PHPCS - 使用别名输入提示

我正在使用带有 Squiz_Sniffs_Commenting_FunctionCommentSniff 的 phpcs,我收到一条消息错误“预期类型提示 'My\Namespace\Interface';在位置 1 找到 $var 的 'AliasInterface'。

我在添加别名的类顶部声明命名空间,并且接收此依赖项的方法具有使用别名的类型提示。所以phpcs显示一个错误。

考虑到别名,有没有办法进行 phpcs 验证?

0 投票
1 回答
235 浏览

php - 有没有分析PHP代码的工具来检查返回值是否被正确使用?

假设我有以下代码:

我在整个代码中都有很多调用$thirdPartyAPI,所以我不想忘记检查是否$result是有效的或发生了错误。

我检查了PHP Code SnifferPHP Mess Detector工具,但我发现它们的规则都不适合这种特殊情况。

我想知道是否有一种工具(例如静态代码分析工具)能够报告我是否忘记检查返回值是否具有特定值。

0 投票
0 回答
186 浏览

php - 使 PHPCS 将方括号理解为 eclipse 上的数组初始值设定项

我将 Eclipse Mars.1 与最新版本的 PDT 和最新的 PHPCS 一起使用。我在我的 PHPCS 上使用了 PEAR 格式化程序的变体,并且有一种行为非常烦人。它不理解方括号的标识为数组初始化。

例如,下面的代码将显示为有效,因为没有任何格式错误。

但如果我这样做

它抱怨值应该与括号一起缩进。好像值是函数调用的一部分,而不是在其中的数组上。

编辑:这里要求的是在命令行上运行 PHPCS 的返回,看起来问题出在 Eclipse 上。

标准...完成(已注册 13 个嗅探器)
创建文件列表...完成(队列中的 1 个文件)
更改为目录 [MY DIRECTORY] 处理 File.php [PHP => 74 行中的 564 个令牌]...在 76 毫秒内完成(0>错误,0警告)
时间:574ms;内存:3.25Mb

编辑 2:刚刚更新到 Mars.2 和最新的 PDT 工具,仍然是同样的问题。

0 投票
1 回答
517 浏览

phpcs - 从命令行运行时忽略单个 PHPCS 规则

设想

有时,我想运行 PHPCS,但让它忽略一条规则,在这种情况下是 Camel Case Method Name 规则。

我知道我可以创建一个新规则集,它从另一个规则集中继承所有规则并排除一个,但如果可能的话,我想从命令行执行此操作。

问题

运行时phpcs --standard=PSR2 --extentions=php src/,有没有办法从该运行的标准中排除单个规则?

0 投票
0 回答
116 浏览

php-5.3 - phpcs 需要 html 文件中的替代语法

我想在 html 文件中的 controle 结构中要求替代语法,否则,如果在任何指令中都没有遵守替代语法规则,则会引发错误或警告。

以下是应建立的替代语法示例:

是否有处理此类要求的 phpcs 嗅探器?如果没有,我们如何进行自定义嗅探来检查 html 文件中的替代语法?

0 投票
1 回答
1138 浏览

php - phpcbf 抱怨缺少 CodeSniffer

问题

phpcbf 抱怨缺少 CodeSniffer,但它似乎从它自己的 phar 中丢失。

我的设置

Ubuntu 14.04 使用 ondrej ppa for PHP 5.6

这是我尝试安装的内容和验证安装的输出

  • sudo pear install PHP_CodeSniffer

    pear list=> PHP_CodeSniffer 2.6.0 稳定版

  • curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar

    php phpcbf.phar --version=> Squiz ( http://www.squiz.net ) 的 PHP_CodeSniffer 版本 2.6.0 (stable)

我如何运行 phpcbf

php phpcbf.phar --standard=PSR2 ./MyDir/MyClass.php

PHP Warning: chdir(): No such file or directory (errno 2) in phar:///home/myuser/projects/myproject/src/phpcbf.phar/CodeSniffer.php on line 861

更新:尽管有警告,但它似乎工作正常。

0 投票
1 回答
3935 浏览

php - 为 2 个空格而不是 4 个空格配置 PHP-cs-fixer 缩进?

不确定这对于这里还是超级用户来说是一个更好的问题。如果它属于那里,请随意移动它。

我正在使用php-cs-fixer,并且我对缩进有一个独特的要求 - 我需要两个空格而不是四个。有没有办法改变这个设置?

请注意,我正在使用 atom-beautifier 来运行 php-cs-fixer,因此理想情况下,任何解决方案都应该可以从那里开始使用。

0 投票
1 回答
4043 浏览

php - PHP CodeSniffer 忽略/排除方法中的下划线规则

运行 phpcs 时,出现Protected member variable "myMethod" must contain a leading underscore. 如何排除/忽略此错误ruleset.xml

0 投票
2 回答
920 浏览

php - PHPCS针对不同目录的不同规则集

我目前正在清理现有的代码库,其中一个方面涉及使用 PHPCS。这是我phpcs.xml目前的文件:

我想对其进行修改,以便将 PSR-2 应用于某些目录(例如foo/bar/),同时对照 PSR-1 检查其余目录。

<exclude-pattern>在手册中找到了可以作为元素的子元素放置的选项,<rule>但我需要相反的选项。