<?xml version="1.0" encoding="UTF-8"?> <ruleset name="phpList Coding Standard"> <description> This standard requires PHP_CodeSniffer >= 3.5.3. </description> <arg name="colors"/> <arg name="extensions" value="php"/> <!--The complete PSR-12 rule set--> <rule ref="PSR12"/> <!-- Arrays --> <rule ref="Generic.Arrays.DisallowLongArraySyntax"/> <rule ref="Squiz.Arrays.ArrayBracketSpacing"/> <!-- Classes --> <rule ref="Generic.Classes.DuplicateClassName"/> <rule ref="PSR1.Classes.ClassDeclaration"/> <rule ref="Squiz.Classes.ClassFileName"/> <rule ref="Squiz.Classes.DuplicateProperty"/> <rule ref="Squiz.Classes.LowercaseClassKeywords"/> <rule ref="Squiz.Classes.SelfMemberReference"/> <!-- Code analysis --> <rule ref="Generic.CodeAnalysis.AssignmentInCondition"/> <rule ref="Generic.CodeAnalysis.EmptyStatement"/> <rule ref="Generic.CodeAnalysis.ForLoopShouldBeWhileLoop"/> <rule ref="Generic.CodeAnalysis.ForLoopWithTestFunctionCall"/> <rule ref="Generic.CodeAnalysis.JumbledIncrementer"/> <rule ref="Generic.CodeAnalysis.UnconditionalIfStatement"/> <rule ref="Generic.CodeAnalysis.UnnecessaryFinalModifier"/> <rule ref="Generic.CodeAnalysis.UselessOverridingMethod"/> <!-- Commenting --> <rule ref="Generic.Commenting.Fixme"/> <rule ref="Generic.Commenting.Todo"/> <rule ref="PEAR.Commenting.InlineComment"/> <rule ref="Squiz.Commenting.DocCommentAlignment"/> <rule ref="Squiz.Commenting.EmptyCatchComment"/> <rule ref="Squiz.Commenting.FunctionCommentThrowTag"/> <rule ref="Squiz.Commenting.PostStatementComment"/> <!-- Control structures --> <rule ref="PEAR.ControlStructures.ControlSignature"/> <!-- Debug --> <rule ref="Generic.Debug.ClosureLinter"/> <!-- Files --> <rule ref="Generic.Files.LineLength"> <exclude-pattern>Configuration/TCA/</exclude-pattern> </rule> <rule ref="Generic.Files.OneClassPerFile"/> <rule ref="Generic.Files.OneInterfacePerFile"/> <rule ref="Generic.Files.OneObjectStructurePerFile"/> <rule ref="Zend.Files.ClosingTag"/> <!-- Formatting --> <rule ref="PEAR.Formatting.MultiLineAssignment"/> <!-- Functions --> <rule ref="Generic.Functions.CallTimePassByReference"/> <rule ref="Squiz.Functions.FunctionDuplicateArgument"/> <rule ref="Squiz.Functions.GlobalFunction"/> <!-- Methods --> <rule ref="PSR2.Methods.MethodDeclaration.Underscore"/> <!-- Metrics --> <rule ref="Generic.Metrics.CyclomaticComplexity"/> <rule ref="Generic.Metrics.NestingLevel"/> <!-- Naming conventions --> <rule ref="Generic.NamingConventions.ConstructorName"/> <rule ref="PEAR.NamingConventions.ValidClassName"/> <!-- Objects --> <rule ref="Squiz.Objects.ObjectMemberComma"/> <!-- Operators --> <rule ref="Squiz.Operators.IncrementDecrementUsage"/> <rule ref="Squiz.Operators.ValidLogicalOperators"/> <!-- PHP --> <rule ref="Generic.PHP.BacktickOperator"/> <rule ref="Generic.PHP.CharacterBeforePHPOpeningTag"/> <rule ref="Generic.PHP.DeprecatedFunctions"/> <rule ref="Generic.PHP.DisallowAlternativePHPTags"/> <rule ref="Generic.PHP.DisallowShortOpenTag"/> <rule ref="Generic.PHP.DiscourageGoto"/> <rule ref="Generic.PHP.ForbiddenFunctions"/> <rule ref="Generic.PHP.NoSilencedErrors"/> <rule ref="Squiz.PHP.CommentedOutCode"> <properties> <property name="maxPercentage" value="70"/> </properties> </rule> <rule ref="Squiz.PHP.DisallowMultipleAssignments"/> <rule ref="Squiz.PHP.DisallowSizeFunctionsInLoops"/> <rule ref="Squiz.PHP.DiscouragedFunctions"/> <rule ref="Squiz.PHP.Eval"/> <rule ref="Squiz.PHP.GlobalKeyword"/> <rule ref="Squiz.PHP.Heredoc"/> <rule ref="Squiz.PHP.InnerFunctions"/> <rule ref="Squiz.PHP.LowercasePHPFunctions"/> <rule ref="Squiz.PHP.NonExecutableCode"/> <!-- Scope --> <rule ref="Squiz.Scope.MemberVarScope"/> <rule ref="Squiz.Scope.StaticThisUsage"/> <!--Strings--> <rule ref="Squiz.Strings.DoubleQuoteUsage"/> <!-- Whitespace --> <rule ref="PEAR.WhiteSpace.ObjectOperatorIndent"/> <rule ref="PEAR.WhiteSpace.ScopeClosingBrace"/> <rule ref="Squiz.WhiteSpace.CastSpacing"/> <rule ref="Squiz.WhiteSpace.LogicalOperatorSpacing"/> <rule ref="Squiz.WhiteSpace.OperatorSpacing"> <properties> <property name="ignoreNewlines" value="true" /> </properties> </rule> <rule ref="Squiz.WhiteSpace.PropertyLabelSpacing"/> <rule ref="Squiz.WhiteSpace.SemicolonSpacing"/> </ruleset>