2012-05-14 12 views

答えて

11

組み込みのものを上書きする場合は、カスタムのコーディング規格を作成する必要があります。これは標準の定義が入ったXMLファイルを作成するだけです。

あなたのケースでは、Zendコーディング規格全体が必要ですが、変数名に関する特定の命名規則ルールは必要ありません。ですから、ファイルを作成します(あなたが好きな名前を付けて、あなたが望む今までそれをどこに置く)mystandard.xmlと呼ばれ、以下の内容に置く:

<?xml version="1.0"?> 
<ruleset name="MyStandard"> 
<description>My custom Zend coding standard.</description> 
<rule ref="Zend"> 
    <exclude name="Zend.NamingConventions.ValidVariableName"/> 
</rule> 
</ruleset> 

含め、より多くのあなたの標準をカスタマイズするために行うことができますがあります他の標準からの小切手の持ち込み、メッセージの上書き、またはそれらの一部のミュート。 http://pear.php.net/manual/en/package.php.php-codesniffer.annotated-ruleset.php

最後に私がチェックしたところ、PHPStormは何らかの理由でカスタムコーディング標準を使用させませんでした。通常は、標準の名前をmystandard.xmlファイルのフルパスとして入力するだけです。 PHPStormがそれをやり遂げることができない場合、それを騙す唯一の方法は実際にカスタム標準をインストールすることです。

これは通常行う必要があるものではなく、少し複雑です。しかし、試してみたいのですが、これはあなたがやる方法です:

  1. あなたのシステムにPHPCSがどこにインストールされているかを調べてください。それがどこであるかわからない場合は、pear config-show | grep php_dirを試してみてください。 PHP_CodeSnifferはその下のディレクトリにあります。 PHP_CodeSnifferのは、そこに直接ごmystandard.xmlファイルを置くが、あなたのことを確認するためにruleset.xml

に名前を変更MyStandard

  • /usr/local/PEAR/PHP/CodeSniffer/Standards下と呼ばれる新しいディレクトリを作成し /usr/local/PEAR/PHP/CodeSniffer
  • で発見されたので、私にとっては、PEARは、/usr/local/PEARにインストールされています標準がインストールされている場合は、phpcs -iを実行します。あなたは今

    The installed coding standards are MySource, MyStandard, PEAR, PHPCS, Squiz and Zend 
    

    が表示されるはず、PHPStormは、ドロップダウンのオプションとしてMyStandard(たぶん)が表示されます。それが表示されない場合は、おそらくリストをハードコーディングしており、Zendコーディング標準を直接ハッキングすることなく動作させる方法はありません。

    私はこの情報を参考にして解決策を見つけることを願っています。そうでない場合、あなたは常にあなたのカスタム標準を使用して、コマンドラインで直接PHPCSを実行することができます:

    phpcs --standard=/path/to/mystandard.xml /path/to/code 
    
  • 0

    標準のリストは、それがphpcsから得ています、ハードコードされていません。上記のように独自の標準をインストールすると、その作業が実行されます。

    +0

    私は、これを機能させるために午後のより良い部分を費やしました。 PHPStormはインストールされた標準のリストもロードしません。インスペクタ設定の唯一のオプションは空白でカスタムです。私はphpcsにCLIを適切に実行させることができますが、PHPStormのドキュメントで規定されているように動作させるのは良いことです。 –

    2

    phpstormに独自のカスタムルールセットを追加することができます。これは、プロジェクト設定=> inspections => "PHP Code Sniffer validation"でコーディング標準 "Custom"を使用して実行できます。カスタムルールセット。xml

    関連する問題