mikulas/code-sniffs

Clevis编码标准的代码嗅探规则

v1.4.0 2014-10-15 10:05 UTC

This package is auto-updated.

Last update: 2024-09-21 20:07:50 UTC


README

Build Status

注释

ForceMultipleLinesSniff

如果phpdoc是单行(除非它在变量上),则发出警告

禁止

/** @property-read $bar */
class Foo
{
	/** @var Bar */
	public $bar;
}

允许

/**
 * @property-read $bar
 */
class Foo
{
	/**
	 * @var Bar
	 */
	public $bar;
}

NullFirstSniff

禁止

/** @property-read Foo|NULL $bar */

允许

/** @property-read NULL|Foo $bar */

SeparateInjectSniff

@inject 不能与 @var 在同一行

ControlStructures

SeparateBracketsSniff

强制在 ifelseelseifforeachfor 块的开括号前换行

if (...)
{
 	return TRUE;
}

Debug

ClassDebuggerCallSniff

如果方法 dumpbarDumpfirelogtimerDebugger 类上被调用,则发出警告。

DebugFunctionCallSniff

如果调用函数 ddddedumpvar_dumperror_logprint_r,则发出警告。

Formatting

UseInAlphabeticalOrderSniff

UseWithoutStartingSeparator

use \Foo\Bar; 上发出警告,建议使用 use Foo\Bar 代替。

MVC

AbstractOrFinalPresenterSniff

Nette Presenter 类必须是抽象或最终的。

Namespaces

UseDeclarationSniff

使用声明必须紧跟在命名空间声明之后,由恰好一个空行分隔。每个声明恰好有一个使用。最后的使用声明之后必须恰好有两个空行。

Newlines

NamespaceNewlinesSniff

命名空间声明必须直接位于 php 开启标签下,由恰好一个空行分隔。命名空间声明和第一个使用声明之间必须恰好有一个空行。如果没有使用声明跟随,命名空间声明之后必须有两行。

<?php

namespace Foo;

use Bar;


class Quaz {}

UseNewlinesSniff

使用声明之间不能有空行。

PHP

KeywordCaseSniff

检查所有构造(除逻辑运算符外)都是小写。例如:foreach 而不是 ForEach

UpperCaseBooleanConstantSniff UpperCaseNullConstantSniff

TRUE && FALSE && NULL;

Strings

ConcatenationSpacingSniff

连接操作符 (.) 必须在两侧各有一个空格。

Variables

VariableNameSniff

强制使用 camelCase 并禁止使用前导下划线。

WhiteSpace

CommaSpacingSniff

确保在每个逗号之前没有空白,之后恰好有一个空格。

ListSpacingSniff

禁止

list ($a, $b);

允许

list($a, $b);