问题标签 [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.
php - PHPStorm:按目录设置每个选项卡的空格数?
我目前公司的编码标准要求每个选项卡有 2 个空格用于 PHP 代码(Drupal 6)。我正在添加自动加载 (PSR-4),因此我们可以开始使用类和 OOP。新命名空间指向classes/src
我希望符合 PSR-2 的目录。这里的大多数开发人员都使用 PHPStorm。有没有办法设置 PHPStorm 为classes/src
目录(和任何子目录)使用 4 个空格,为项目的其余部分使用 2 个空格?
我想避免让开发人员按两次制表符来获得 4 个空格的效果。我还想避免将代码库的其余部分转换为 4 个空格,因为这会扰乱我们的 git 历史记录,并且我的名字到处都是。
我目前使用 Sublime Text 3,这一切都归功于 Directory Settings 包。
php - PSR-2。什么时候大写目录?
据我了解,根据 PSR-2 标准,我们应该将包含类的目录名称大写。但是如果目录还包含一些其他文件,例如样式和脚本,该怎么办?
假设我有一个插件目录,每个插件都可以包含模板和其他东西:
这个结构正确吗?
php - PSR-2 if 语句——什么是允许的?
我可以使用if语句,例如:
或者必须始终与大括号一起使用:
psr-2 - StudlyCaps 和 CamelCase 有什么区别?
PSR 建议,方法名必须在 camelCase 中声明,类名必须在 StudlyCaps 中声明。
php - PHP PSR-2 语句之前/之后的新行
示例 1:
我在 foreach 之前和之后找不到关于 new live 的明确答案,PSR-2 对此有何看法?
php - 在 Prestashop Validator 上使用 PSR-2 进行验证时出现问题
在 Prestashop Validator 上验证我的新模块时,我的主控制器文件(php 文件)中出现以下错误。
我在只有起始<?php
标签的第一行收到错误。
我在互联网上对此进行了很多研究,但无法找到解决方案。我很震惊。
我应该怎么办?
php - PSR-2 控制结构的开口大括号
我试图理解为什么PSR2对新行的类和方法有大括号,而其余的没有。我会说如果大括号总是在新行上,那么阅读代码会容易得多。
有人可以解释背后的逻辑是什么:
控制结构的左大括号必须在同一行,右大括号必须在主体之后的下一行。
php - PHP 命名空间类命名约定
我目前关注 PSR-2 和 PSR-4。在尝试命名几个类时,我遇到了一个小难题。这是一个例子。
我有一个基本的 REST 客户端,\Vendor\RestClient\AbstractClient
. 我有这个抽象客户端的两个实现:
\Vendor\GoogleClient\GoogleClient
\Vendor\GithubClient\GithubClient
由于命名空间已经指定了域,因此客户端类的命名是否多余?我应该改为命名我的课程:
\Vendor\GoogleClient\Client
\Vendor\GithubClient\Client
这意味着客户端代码将始终使用以下内容:
这比:
但是第一个选项允许我们通过仅更改 use 语句轻松地换出实现。
PSR4 指定Interfaces
andAbstractClasses
应该分别加上后缀Interface
和前缀Abstract
,但它没有说明域特定的前缀/后缀。有什么意见/建议吗?
php - PHP PSR 验证器
我正在寻找一种可以检查我的 PHP 代码并根据 PSR 标准自动更新或至少指出代码违反 PSR 标准的地方的工具。谷歌搜索没有太大帮助。有没有可以做到的工具?
php - 使用空格而不是制表符进行缩进的客观原因?
根据 PSR-2 标准使用空格而不是制表符来缩进文件是否有客观原因,有人可以提供:
- 事实,
- 参考,
- 具体专业知识
基于哪个 PSR-2 标准?
PSR-2 标准的作者想到的不仅仅是“外观和感觉”,不仅仅是基于意见的东西,而且很多人很难理解为什么在团队合作中空间更好。
接受答案的解释:
根据 Farsides 的回答:存储库的事情可能是 PSR-2 中的空格被解释为缩进工具的确切情况。PSR-2 是为协助团队合作而开发的标准。行首的单个意外空格 - 使用制表符时 - 在 IDE 中可能不可见,并且可以潜入存储库。如果几个人在同一个文件上工作,很可能会产生不必要的冲突。使用空格而不是制表符可以轻松捕捉眼球上的这种意外空格,这可能是为什么使用它们成为标准的原因。