问题标签 [psr-12]

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 投票
9 回答
247595 浏览

php - PHP | define() 与 const

在 PHP 中,您可以通过两种方式声明常量:

  1. define关键字

  2. 使用const关键字


  • 这两者之间的主要区别是什么?
  • 何时以及为什么要使用其中一种,何时使用另一种?
0 投票
1 回答
78 浏览

php - self 是 PHP 中的关键字,因此根据 PSR-12 是否应该使用小写?

PHP 手册不包含self在其关键字列表中。手册页上的评论建议self应该包括在内,但它已被大大否决。这是否意味着这self不是关键字?

这很重要的原因是PSR-12 编码风格规范规定所有 PHP 保留关键字和类型必须小写。该规范包含两个指向保留关键字和类型列表的链接,但self没有出现在其中任何一个中。这是否意味着 PSR-12 对是否self应该小写保持沉默?

0 投票
1 回答
1215 浏览

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

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

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

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

0 投票
1 回答
370 浏览

php - 是否对 PSR 兼容的控制结构使用替代 PHP 语法?(与 HTML 混合时)

我已经通过 PHP-Fig 网站查看了与控制结构的替代 PHP 语法相关的任何 PSR,但没有找到任何关于它的信息。

替代语法是这样的,例如:

那么它只是没有定义,因此可以使用,还是因为在编码风格部分没有提到它而不符合要求?

0 投票
1 回答
1591 浏览

php - 如何部分禁用 PHPCS 的 PSR-12 declare(strict_types=1) 检查?

我目前php vendor/bin/phpcs --standard=PSR12 src在我的几个项目的 CI 中运行。

他们已经失败了 6 个多月,因为我的代码组织如下:

它目前会生成几个 PHPCS 警告:

有没有办法保留 PSR-12 的其余检查,但不是那些?

0 投票
0 回答
629 浏览

php - PSR-12 和方法链

PSR-12 是否对方法链接建立了任何限制?根据标准,以下两个选项是否同样有效?

选项1:

选项 2:

0 投票
1 回答
308 浏览

php - 有没有办法在 PHP 中分解命名空间?

我发现自己在互联网上寻找已经回答的人,但我找不到任何人。

我正在使用严格的 PSR12 标准清理一些代码,我发现这个问题是命名空间变得比配置的 80 个字符长(这是我们的软限制,它产生了一个警告)。

到目前为止,我找到了一种编写可读代码的正确方法,同时保持在 80 行之内,无论名称有多长。但是对于我没有的命名空间。我们的许多命名空间声明如下所示:

namespace CompanyName\ProjectName\Domain\SubClasification\Clasification\ModuleName;

它们可能会变得很长,特别是因为我的许多同事喜欢很长的类名,所以我想知道是否有办法将命名空间声明放在多行上?

0 投票
1 回答
195 浏览

php - PSR-12 并将相同的值分配给多个变量

是否允许在 PSR-12 的同一行上分配多个变量?

例如:

0 投票
1 回答
334 浏览

php - PSR-12 是否说明了命名空间导入和别名应该如何分组和排序?

我正在使用 和 工具进行代码phpmd质量自动化phpcsphpcpd代码嗅探器已设置为--standard=PSR12.

关于命名空间导入和别名的定义方式,我找不到任何详细信息或建议:

  • 用大括号分组或以单独的方式定义每个(目前这是我有偏见的建议)
  • AZ排序

例如:

与:

如果没有标准建议,我将在团队内部建立内部规则,但如果有,我很乐意遵守。

0 投票
1 回答
204 浏览

php - Atom 编辑器 - 将其设置为 codeigniter 标准 - PSR12

我正在考虑从 sublime text 3 更改为 atom,并且我想为 codeigniter 4 PSR12 设置标识标准。

我已经通过 composer 在全球范围内安装了以下软件包:

  1. PHP_CodeSniffer
  2. Codeigniter4-标准
  3. PHP-CS-Fixer

使用以下命令:

最后是:

我还注意到我的可执行文件不在 /home/user/.config/composer 文件夹中,而是在 /home/user/.composer 文件夹中。

也许我在这方面做错了什么......

在 atom 上,我安装了 atom-beautify 和 php-cs-fixer。

在 atom-beautify 上,我的配置如下: 常规设置:

  1. 保存时美化整个文件:选中
  2. 显示加载视图:选中

可执行文件:

PHP-cs-Fixer -> 二进制/脚本路径:

PHPCBF -> 二进制/脚本路径:

最后是我的 atom-beaufity config.cson

顺便说一句:我还想问一下你们用 php 进行 Web 开发时使用了哪些插件。

非常感谢!

编辑:

我已经成功设置了 PSR12,我将在下面发布我的新 config.cson:

现在的问题是 atom 不会“美化”视图上的 php 代码,只会在模型和控制器上“美化”,甚至视图文件也是 .php