<?xml version="1.0"?> <ruleset name="Basic Project Coding Standards"> <rule ref="PSR2" /> <rule ref="Generic"> <!-- Rules of an ancient time... --> <exclude name="Generic.PHP.ClosingPHPTag.NotFound" /> <exclude name="Generic.WhiteSpace.DisallowSpaceIndent.SpacesUsed" /> <exclude name="Generic.Arrays.DisallowShortArraySyntax.Found" /> <exclude name="Generic.Files.EndFileNoNewline.Found" /> <exclude name="Generic.Files.LowercasedFilename.NotFound" /> <exclude name="Generic.Functions.OpeningFunctionBraceBsdAllman.BraceOnSameLine" /> <!-- These rules are in conflict with PSR2 --> <exclude name="Generic.Classes.OpeningBraceSameLine.BraceOnNewLine" /> <exclude name="Generic.PHP.UpperCaseConstant.Found" /> <exclude name="Generic.Functions.OpeningFunctionBraceKernighanRitchie.BraceOnNewLine" /> <exclude name="Generic.Formatting.NoSpaceAfterCast.SpaceFound" /> </rule> <rule ref="PEAR"> <!-- This rule is in conflict with Generic --> <exclude name="PEAR.WhiteSpace.ScopeIndent.IncorrectExact" /> <!-- This rule is in conflict with PSR2 --> <exclude name="PEAR.NamingConventions.ValidFunctionName.PrivateNoUnderscore"/> <exclude name="PEAR.NamingConventions.ValidVariableName.PrivateNoUnderscore" /> </rule> <!-- Some interesting rules from Squiz --> <rule ref="Squiz.PHP.NonExecutableCode"/> <rule ref="Squiz.PHP.CommentedOutCode"/> <rule ref="Squiz.PHP.DiscouragedFunctions"/> <rule ref="Squiz.PHP.ForbiddenFunctions"/> <rule ref="Squiz.Classes.ClassDeclaration"/> <rule ref="Squiz.ControlStructures.ControlSignature"/> <rule ref="Squiz.ControlStructures.ForEachLoopDeclaration"/> <rule ref="Squiz.ControlStructures.ForLoopDeclaration"/> <rule ref="Squiz.Functions.FunctionDeclaration"/> <rule ref="Squiz.Functions.FunctionDeclarationArgumentSpacing"/> <rule ref="Squiz.WhiteSpace.SuperfluousWhitespace"/> <!-- Our files are located in src and tests directories --> <file>.</file> <file>./test</file> </ruleset>