问题标签 [psr-2]

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 回答
189 浏览

php - 我可以根据 PSR-2 在单行中使用 if 语句吗?

我需要知道是否允许根据 PSR-2 编码风格使用单行 if 语句。

我已经阅读了文档,但找不到任何相关信息。

https://www.php-fig.org/psr/psr-1/

https://www.php-fig.org/psr/psr-2/

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 回答
1215 浏览

php - PSR 中命名空间声明前有多少新行?

PSR 对命名空间声明后的新行有相当明确的立场:

如果存在,命名空间声明后必须有一个空行。

但是命名空间前的空行呢?是否有任何规则或限制?我相信我在某个地方看到过一些东西,但现在找不到。

0 投票
1 回答
643 浏览

php - PHP 长三元运算符行和 120 字符行长 PSR 规则

有没有一种格式化长三元运算符行的好方法?比方说:

根据 PSR 中定义的每行 120 个字符,这太长了。我应该这样做:

还是有其他最佳实践?

0 投票
0 回答
37 浏览

php - PSR-2 的回车是否正确?

我用这样的方式创建我的类,在结束 } 之后有一个额外的空行(这里是第 9 行):

这有助于我在使用我最喜欢的编码工具 notepad++ 时找到函数列表,但我听说它可能是某些 PSR 验证器的错误。阅读PSR-2 编码风格指南,我没有找到任何关于这个的。

这会导致验证器出错吗?

0 投票
0 回答
70 浏览

php - 我的 PHP 代码嗅探器 xml 忽略了我的配置 dist 文件

我正在使用该包"squizlabs/php_codesniffer": "^3.6"在 Laravel 8 项目中构建我的代码嗅探器。

但是我的 phpcs.xml.dist 文件忽略了我的 php_cs.dist 文件(配置文件)。这两个文件都在项目根路径中。

./phpcs.xml.dist

./php_cs.dist

我正在使用此命令运行:php vendor/bin/phpcsphp vendor/bin/phpcbf

0 投票
2 回答
37 浏览

php - 根据 PSR 是否需要在 OOP PHP 中的 $this 关键字之后放置空格?

我完全研究了PSR-2PSR-12文档,但没有找到任何关于是否在 $this 关键字之后放置任何空格的解释。

我的确切问题是,根据 PSR,以下哪种风格更正确:

或者

要比较的示例代码如下:

和。。比较:

两者都正确吗?如果是这样,是否有理由使用一个而不是另一个?