worksome/code-sniffer

此包已被废弃,不再维护。未建议替代包。

Worksome的phpcs偏好设置和自定义嗅探器

安装数: 288,454

依赖者: 0

建议者: 0

安全性: 0

星标: 15

关注者: 15

分支: 1

开放性问题: 0

类型:phpcodesniffer-standard

v1.0.1 2022-09-22 11:10 UTC

README

⚠️ 已废弃,推荐使用 coding-style 包 ⚠️

Worksome的自定义嗅探器

此包包含所有Worksome的自定义嗅探器和配置。

composer require worksome/code-sniffer --dev

使用方法

在项目的根目录创建一个内容如下的phpcs.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<ruleset name="YourCompany">
    <description>YourCompany Coding Standard</description>

    <file>./app</file>
    <file>./tests</file>
    <file>./config</file>

    <arg name="colors"/>
    <arg name="parallel" value="75"/>

    <!-- Adds all of Worksome's coding style -->
    <rule ref="WorksomeSniff"/>
</ruleset>

运行phpcs查看是否有任何错误

vendor/bin/phpcs

或运行phpcbf在可能的情况下自动修复错误

vendor/bin/phpcbf

我们建议将命令添加到composer.json中的脚本,以便更容易执行。

...
"scripts": {
    "phpcs": "vendor/bin/phpcs",
    "phpcbf": "vendor/bin/phpcbf"
}
...

这样,您现在可以通过composer执行它们

$ composer phpcs
$ composer phpcbf

自定义嗅探器

列出Worksome创建的所有自定义嗅探器。

Laravel

所有特定于Laravel的自定义嗅探器。

配置文件名短横线命名

检查所有配置文件是否都使用短横线命名。

禁止使用env变量

确保您在代码中不使用env辅助函数,除非是配置文件。

事件监听器后缀

强制事件监听器以特定后缀结束,默认后缀为Listener

参数 默认值
后缀 Listener

禁止在resources目录外使用blade

确保不存在于Laravel的resources目录之外的任何.blade.php文件。

参数 默认值
resourcesDirectory {YOUR_PROJECT}/resources

PhpDoc

所有非特定于Laravel的自定义嗅探器。

属性美元符号

确保在phpdoc中定义的属性中始终包含美元符号。

/**
* @property string $name
 */
class User {}

无类型或注释的参数标签

删除所有未指定类型或注释的@param标签

/**
 * @param string $name
 * @param $type some random type
 * @param $other // <-- will be removed
 */
public function someMethod($name, $type, $other): void
{}

这主要是由于phpstan要求在将其视为有效属性之前需要这些信息。