首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得PHP Codesniffer Ruleset与Sonar一起使用的所有密钥?

问如何获得PHP Codesniffer Ruleset与Sonar一起使用的所有密钥?
EN

Stack Overflow用户
提问于 2012-05-31 07:48:30
回答 2查看 1.5K关注 0票数 3

我试图在phpcs中添加Drupal编码标准。

我可以使用phpcs --standard=Drupal运行Drupal标准

现在我想对Sonar执行同样的标准。

在Sonar中,我可以在rules.xml扩展中添加所有规则集的键,但是如何获得这些规则的所有键呢?

我可以使用*sniff.php文件和文件夹结构来识别一些密钥,但我不确定我是否得到了所有这些密钥。

有人能建议一种自动化的方法,让所有的都可以在一个特定的标准中使用规则吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-31 12:15:39

您必须识别Drupal标准所引用的所有嗅探,并在Sonar (通过Web)中创建一个参考它们的概要文件。然后激活此配置文件作为默认配置文件,然后就可以进行分析了。

票数 2
EN

Stack Overflow用户

发布于 2012-09-20 14:22:19

帮助消息中可能不清楚,但是命令行工具有一个标志:

代码语言:javascript
复制
-e    Explain a standard by showing the sniffs it includes

因此,要显示Drupal编码标准中的所有嗅探,可以运行以下命令:

代码语言:javascript
复制
phpcs -e --standard=Drupal

输出如下所示:

代码语言:javascript
复制
The vendor/drupal/coder/coder_sniffer/Drupal/ standard contains 111 sniffs

Drupal (68 sniffs)
------------------
  Drupal.Array.Array
  Drupal.Array.DisallowLongArraySyntax
  Drupal.CSS.ClassDefinitionNameSpacing
  Drupal.CSS.ColourDefinition
  Drupal.Classes.ClassCreateInstance
  Drupal.Classes.ClassDeclaration
  Drupal.Classes.FullyQualifiedNamespace
  Drupal.Classes.InterfaceName
  Drupal.Classes.PropertyDeclaration
  Drupal.Classes.UnusedUseStatement
  Drupal.Classes.UseLeadingBackslash
  Drupal.Commenting.ClassComment
  Drupal.Commenting.DataTypeNamespace
  Drupal.Commenting.DocCommentAlignment
  Drupal.Commenting.DocComment
  Drupal.Commenting.DocCommentStar
  Drupal.Commenting.FileComment
  Drupal.Commenting.FunctionComment
  Drupal.Commenting.HookComment
  Drupal.Commenting.InlineComment
  Drupal.Commenting.PostStatementComment
  Drupal.Commenting.VariableComment
  Drupal.ControlStructures.ControlSignature
  Drupal.ControlStructures.ElseIf
  Drupal.ControlStructures.InlineControlStructure
  Drupal.Files.EndFileNewline
  Drupal.Files.FileEncoding
  Drupal.Files.LineLength
  Drupal.Files.TxtFileLineLength
  Drupal.Formatting.MultiLineAssignment
  Drupal.Formatting.MultipleStatementAlignment
  Drupal.Formatting.SpaceInlineIf
  Drupal.Formatting.SpaceUnaryOperator
  Drupal.Functions.DiscouragedFunctions
  Drupal.Functions.FunctionDeclaration
  Drupal.InfoFiles.AutoAddedKeys
  Drupal.InfoFiles.ClassFiles
  Drupal.InfoFiles.DuplicateEntry
  Drupal.InfoFiles.Required
  Drupal.Methods.MethodDeclaration
  Drupal.NamingConventions.ValidClassName
  Drupal.NamingConventions.ValidFunctionName
  Drupal.NamingConventions.ValidGlobal
  Drupal.NamingConventions.ValidVariableName
  Drupal.Scope.MethodScope
  Drupal.Semantics.ConstantName
  Drupal.Semantics.EmptyInstall
  Drupal.Semantics.FunctionAlias
  Drupal.Semantics.FunctionT
  Drupal.Semantics.FunctionWatchdog
  Drupal.Semantics.InstallHooks
  Drupal.Semantics.LStringTranslatable
  Drupal.Semantics.PregSecurity
  Drupal.Semantics.RemoteAddress
  Drupal.Semantics.TInHookMenu
  Drupal.Semantics.TInHookSchema
  Drupal.Strings.UnnecessaryStringConcat
  Drupal.WhiteSpace.CloseBracketSpacing
  Drupal.WhiteSpace.Comma
  Drupal.WhiteSpace.EmptyLines
  Drupal.WhiteSpace.Namespace
  Drupal.WhiteSpace.ObjectOperatorIndent
  Drupal.WhiteSpace.ObjectOperatorSpacing
  Drupal.WhiteSpace.OpenBracketSpacing
  Drupal.WhiteSpace.OpenTagNewline
  Drupal.WhiteSpace.OperatorSpacing
  Drupal.WhiteSpace.ScopeClosingBrace
  Drupal.WhiteSpace.ScopeIndent

Generic (13 sniffs)
-------------------
  Generic.CodeAnalysis.UselessOverridingMethod
  Generic.Files.ByteOrderMark
  Generic.Files.LineEndings
  Generic.Formatting.SpaceAfterCast
  Generic.Functions.FunctionCallArgumentSpacing
  Generic.Functions.OpeningFunctionBraceKernighanRitchie
  Generic.NamingConventions.ConstructorName
  Generic.NamingConventions.UpperCaseConstantName
  Generic.PHP.DeprecatedFunctions
  Generic.PHP.DisallowShortOpenTag
  Generic.PHP.LowerCaseKeyword
  Generic.PHP.UpperCaseConstant
  Generic.WhiteSpace.DisallowTabIndent

MySource (1 sniffs)
-------------------
  MySource.Debug.DebugCode

PEAR (3 sniffs)
---------------
  PEAR.Files.IncludingFile
  PEAR.Functions.FunctionCallSignature
  PEAR.Functions.ValidDefaultValue

PSR2 (2 sniffs)
---------------
  PSR2.Namespaces.NamespaceDeclaration
  PSR2.Namespaces.UseDeclaration

Squiz (23 sniffs)
-----------------
  Squiz.Arrays.ArrayBracketSpacing
  Squiz.Arrays.ArrayDeclaration
  Squiz.CSS.ClassDefinitionClosingBraceSpace
  Squiz.CSS.ClassDefinitionOpeningBraceSpace
  Squiz.CSS.ColonSpacing
  Squiz.CSS.DisallowMultipleStyleDefinitions
  Squiz.CSS.EmptyClassDefinition
  Squiz.CSS.EmptyStyleDefinition
  Squiz.CSS.Indentation
  Squiz.CSS.MissingColon
  Squiz.CSS.SemicolonSpacing
  Squiz.ControlStructures.ForEachLoopDeclaration
  Squiz.ControlStructures.ForLoopDeclaration
  Squiz.ControlStructures.SwitchDeclaration
  Squiz.Functions.FunctionDeclarationArgumentSpacing
  Squiz.Functions.MultiLineFunctionDeclaration
  Squiz.PHP.LowercasePHPFunctions
  Squiz.PHP.NonExecutableCode
  Squiz.Strings.ConcatenationSpacing
  Squiz.WhiteSpace.FunctionSpacing
  Squiz.WhiteSpace.LanguageConstructSpacing
  Squiz.WhiteSpace.SemicolonSpacing
  Squiz.WhiteSpace.SuperfluousWhitespace

Zend (1 sniffs)
---------------
  Zend.Files.ClosingTag
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10829417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档