问题标签 [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.
php - PHP | define() 与 const
在 PHP 中,您可以通过两种方式声明常量:
带
define
关键字使用
const
关键字
- 这两者之间的主要区别是什么?
- 何时以及为什么要使用其中一种,何时使用另一种?
php - self 是 PHP 中的关键字,因此根据 PSR-12 是否应该使用小写?
PHP 手册不包含self
在其关键字列表中。手册页上的评论建议self
应该包括在内,但它已被大大否决。这是否意味着这self
不是关键字?
这很重要的原因是PSR-12 编码风格规范规定所有 PHP 保留关键字和类型必须小写。该规范包含两个指向保留关键字和类型列表的链接,但self
没有出现在其中任何一个中。这是否意味着 PSR-12 对是否self
应该小写保持沉默?
php - PSR 中命名空间声明前有多少新行?
PSR 对命名空间声明后的新行有相当明确的立场:
如果存在,命名空间声明后必须有一个空行。
但是命名空间前的空行呢?是否有任何规则或限制?我相信我在某个地方看到过一些东西,但现在找不到。
php - 是否对 PSR 兼容的控制结构使用替代 PHP 语法?(与 HTML 混合时)
我已经通过 PHP-Fig 网站查看了与控制结构的替代 PHP 语法相关的任何 PSR,但没有找到任何关于它的信息。
替代语法是这样的,例如:
那么它只是没有定义,因此可以使用,还是因为在编码风格部分没有提到它而不符合要求?
php - 如何部分禁用 PHPCS 的 PSR-12 declare(strict_types=1) 检查?
我目前php vendor/bin/phpcs --standard=PSR12 src
在我的几个项目的 CI 中运行。
他们已经失败了 6 个多月,因为我的代码组织如下:
它目前会生成几个 PHPCS 警告:
有没有办法保留 PSR-12 的其余检查,但不是那些?
php - PSR-12 和方法链
PSR-12 是否对方法链接建立了任何限制?根据标准,以下两个选项是否同样有效?
选项1:
选项 2:
php - 有没有办法在 PHP 中分解命名空间?
我发现自己在互联网上寻找已经回答的人,但我找不到任何人。
我正在使用严格的 PSR12 标准清理一些代码,我发现这个问题是命名空间变得比配置的 80 个字符长(这是我们的软限制,它产生了一个警告)。
到目前为止,我找到了一种编写可读代码的正确方法,同时保持在 80 行之内,无论名称有多长。但是对于我没有的命名空间。我们的许多命名空间声明如下所示:
namespace CompanyName\ProjectName\Domain\SubClasification\Clasification\ModuleName;
它们可能会变得很长,特别是因为我的许多同事喜欢很长的类名,所以我想知道是否有办法将命名空间声明放在多行上?
php - PSR-12 并将相同的值分配给多个变量
是否允许在 PSR-12 的同一行上分配多个变量?
例如:
php - PSR-12 是否说明了命名空间导入和别名应该如何分组和排序?
我正在使用 和 工具进行代码phpmd
质量自动化phpcs
。phpcpd
代码嗅探器已设置为--standard=PSR12
.
关于命名空间导入和别名的定义方式,我找不到任何详细信息或建议:
- 用大括号分组或以单独的方式定义每个(目前这是我有偏见的建议)
- AZ排序
例如:
与:
如果没有标准建议,我将在团队内部建立内部规则,但如果有,我很乐意遵守。
php - Atom 编辑器 - 将其设置为 codeigniter 标准 - PSR12
我正在考虑从 sublime text 3 更改为 atom,并且我想为 codeigniter 4 PSR12 设置标识标准。
我已经通过 composer 在全球范围内安装了以下软件包:
- PHP_CodeSniffer
- Codeigniter4-标准
- PHP-CS-Fixer
使用以下命令:
最后是:
我还注意到我的可执行文件不在 /home/user/.config/composer 文件夹中,而是在 /home/user/.composer 文件夹中。
也许我在这方面做错了什么......
在 atom 上,我安装了 atom-beautify 和 php-cs-fixer。
在 atom-beautify 上,我的配置如下: 常规设置:
- 保存时美化整个文件:选中
- 显示加载视图:选中
可执行文件:
PHP-cs-Fixer -> 二进制/脚本路径:
PHPCBF -> 二进制/脚本路径:
最后是我的 atom-beaufity config.cson:
顺便说一句:我还想问一下你们用 php 进行 Web 开发时使用了哪些插件。
非常感谢!
编辑:
我已经成功设置了 PSR12,我将在下面发布我的新 config.cson:
现在的问题是 atom 不会“美化”视图上的 php 代码,只会在模型和控制器上“美化”,甚至视图文件也是 .php