corpus / coding-standard
Corpus Coding Standard for PHP_CodeSniffer
Installs: 47 024
Dependents: 20
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 1
Type:phpcodesniffer-standard
Requires
Requires (Dev)
- ext-dom: *
- donatj/drop: ^1.0
- friendsofphp/php-cs-fixer: ^3.14
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-11-01 17:10:00 UTC
README
Corpus Coding Standard for PHP_CodeSniffer.
Requirements
- dealerdirect/phpcodesniffer-composer-installer: *
- squizlabs/php_codesniffer: *
- slevomat/coding-standard: ^8.14
- php: >=7.4
Installing
Install the latest version with:
composer require --dev 'corpus/coding-standard'
Sniffs
Class: \Corpus\Sniffs\ControlStructures\ClosingBraceNewlineSniff
Sniff: Corpus.ControlStructures.ClosingBraceNewline
Ensure that all closing curly brackets are followed by a blank line.
Example:
if( $foo ) { echo $bar; } echo $baz;
Becomes:
if( $foo ) { echo $bar; } echo $baz;
Class: \Corpus\Sniffs\ControlStructures\OpeningOneTrueBraceSniff
Sniff: Corpus.ControlStructures.OpeningOneTrueBrace
Ensure that the K&R "One True Brace" style is used.
Example:
class Foo { public function bar() { echo "bbq"; } }
Becomes:
class Foo { public function bar() { echo "bbq"; } }
Class: \Corpus\Sniffs\General\BinaryOperationNewlineSniff
Sniff: Corpus.General.BinaryOperationNewline
Ensure that in multiline logical statements &&
and ||
lead lines rather than trail.
Example:
if( $foo && $bar && $baz )}
Becomes:
if( $foo && $bar && $baz )}
Class: \Corpus\Sniffs\General\ReturnTrailingNewlineSniff
Sniff: Corpus.General.ReturnTrailingNewline
Ensure that no blank lines separate return statements and following curly braces.
Example:
if( $foo == true ){ return 1; }
Becomes:
if( $foo == true ){ return 1; }
Class: \Corpus\Sniffs\Methods\ClosureSpacingSniff
Sniff: Corpus.Methods.ClosureSpacing
Force whitespace between function/fn keyword and opening paren on closures.
Example:
$foo = function ( string $foo ) { echo $foo; }; $bar = fn ( int $bar ) => $bar + 1;
Becomes:
$foo = function( string $foo ) { echo $foo; }; $bar = fn( int $bar ) => $bar + 1;
Class: \Corpus\Sniffs\Methods\MethodParameterFormattingSniff
Sniff: Corpus.Methods.MethodParameterFormatting
Set a maximum length for function arguments. Fix by breaking into multiple lines.
Example:
function Foo( ClosingBraceNewlineSniffTest $closingBraceNewlineSniffTest, OpeningOneTrueBraceSniffTest $openingOneTrueBraceSniffTest ) { }
Becomes:
function Foo( ClosingBraceNewlineSniffTest $closingBraceNewlineSniffTest, OpeningOneTrueBraceSniffTest $openingOneTrueBraceSniffTest ) { }
<?php namespace Corpus\Sniffs\Methods; class MethodParameterFormattingSniff { /** * Maximum line character length after which to break function arguments into newlines */ public $maxLength = 130; }
Inherited Sniffs
- Generic.ControlStructures.InlineControlStructure
- Generic.WhiteSpace.DisallowSpaceIndent
- Generic.Files.ByteOrderMark
- Generic.Files.LineEndings
- Generic.PHP.LowerCaseConstant
- Generic.PHP.LowerCaseKeyword
- Generic.PHP.DeprecatedFunctions
- Generic.NamingConventions.UpperCaseConstantName
- Generic.Formatting.NoSpaceAfterCast
- Generic.Functions.OpeningFunctionBraceKernighanRitchie
- PSR2.Files.ClosingTag
- PSR2.Classes.PropertyDeclaration
- PEAR.Functions.ValidDefaultValue
- Squiz.Classes.LowercaseClassKeywords
- Squiz.Classes.SelfMemberReference
- Squiz.Scope.MethodScope
- SlevomatCodingStandard.Namespaces.UnusedUses
- SlevomatCodingStandard.Namespaces.DisallowGroupUse
- SlevomatCodingStandard.Namespaces.MultipleUsesPerLine
- SlevomatCodingStandard.Namespaces.UseDoesNotStartWithBackslash
- SlevomatCodingStandard.Classes.TraitUseDeclaration
- SlevomatCodingStandard.Functions.UnusedInheritedVariablePassedToClosure
- SlevomatCodingStandard.Functions.UselessParameterDefaultValue
- SlevomatCodingStandard.Arrays.DisallowImplicitArrayCreation
- SlevomatCodingStandard.ControlStructures.DisallowContinueWithoutIntegerOperandInSwitch
- SlevomatCodingStandard.Namespaces.UseFromSameNamespace
- SlevomatCodingStandard.Arrays.TrailingArrayComma
- SlevomatCodingStandard.ControlStructures.RequireNullCoalesceOperator
- SlevomatCodingStandard.ControlStructures.RequireShortTernaryOperator
- SlevomatCodingStandard.ControlStructures.UselessIfConditionWithReturn
- SlevomatCodingStandard.ControlStructures.UselessTernaryOperator
- SlevomatCodingStandard.Namespaces.AlphabeticallySortedUses
- SlevomatCodingStandard.Namespaces.UselessAlias
- SlevomatCodingStandard.PHP.UselessSemicolon
- SlevomatCodingStandard.TypeHints.NullableTypeForNullDefaultValue
- SlevomatCodingStandard.Classes.EmptyLinesAroundClassBraces
- SlevomatCodingStandard.Variables.UselessVariable
- SlevomatCodingStandard.Operators.SpreadOperatorSpacing
- SlevomatCodingStandard.Classes.ParentCallSpacing
- SlevomatCodingStandard.ControlStructures.NewWithoutParentheses
- SlevomatCodingStandard.Commenting.UselessFunctionDocComment
- SlevomatCodingStandard.Classes.RequireSelfReference
- SlevomatCodingStandard.ControlStructures.NewWithoutParentheses