| ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot |
FAQFAQ – よくある質問
PHP_CodeSniffer はコードカバレッジテストや単体テストを行うものですか?いいえ。PHP_CodeSniffer は、PHP アプリケーションが正常に動作するかどうかを調べるツールではありません。 PHP_CodeSniffer が保証するのは、単に PHP のコードが規約に従っているということだけです。 私のコードは完璧です! そんな私にも PHP_CodeSniffer が必要ですか?たぶん必要じゃないでしょう。でも、コーディング規約に従っていることを 確実に保証したいのなら、一番簡単でお手軽なのは PHP_CodeSniffer を使用することです。 PHP_CodeSniffer は、人手によるコードレビュー作業の代わりとなるだけではありません。 PHP_CodeSniffer を使用すると、コードの正確さを調べるための コードレビューを常に用意しておくことができます。
PHP_CodeSniffer は、コードを解析してそれが実行可能であることを保証してくれますか?いいえ。PHP_CodeSniffer は実際にコードをパースするわけではありません。 したがって、実際のコードにパースエラーが含まれているかどうかは判断できません。 PHP_CodeSniffer が検知できるパースエラーもいくつか存在し、 パースエラーの疑いがあるため正確に sniff できない可能性のあるコードについては警告を発します。 しかし、実際にパースを行うわけではないので、 PHP_CodeSniffer は、パースエラーを含むコードをチェックすると 間違ったエラー数を返すことになるでしょう。
このコーディング規約には納得がいきません! 私が使っている規約を PHP_CodeSniffer で使えますか?もちろんです。PHP_CodeSniffer は、コーディング規約を強制するための単なる枠組みです。 PHP_CodeSniffer にはサンプルのコーディング規約がいくつか含まれていますが、 これは独自の規約を持たないプロジェクトでも簡単に使用できるようにするためのものです。 独自の規約を作成したい場合は、 コーディング規約の作成のためのチュートリアル を参照ください。 PHP_CodeSniffer で指摘されたエラーを修正したのに、また別のエラーが出たんですけれど?あるエラーのおかげで別のエラーの存在が見つからなかったり、 修正の際に新たなエラーが発生したといった場合がありえます。 たとえば、PHP_CodeSniffer によって、 インライン IF 文には波括弧が必要だという指摘を受けたとしましょう。 これを修正した際の波括弧の位置がおかしければ、 PHP_CodeSniffer はまたエラーを報告します。 すべてのエラーが解消されるまで、常に PHP_CodeSniffer を実行するようにしましょう。 PHP_CodeSniffer が推奨する変更を行った場合は、必ずもう一度 PHP_CodeSniffer を実行し、新たなエラーが発生していないことを確認します。 PHP_CodeSniffer は修正を提案するだけで、なぜ実際にコードを変更してしまわないのですかPHP_CodeSniffer は、 あなたのコードがコーディング規約に反していないかどうかを確実にチェックできると確信しています。 ただ、チェックしたアプリケーションのコードを レビューなしにいきなり変更してしまうことはできません。 ソースコードをリリースする前に PHP_CodeSniffer が行った変更内容をチェックする手間を考えてみましょう。 自分で変更したほうがずっと安心しませんか? 手動で変更することには、以下のような利点があります。
もし PHP_CodeSniffer がうまい具合にコードを変更してくれることを期待しているのなら、 コーディング規約をしっかり読んでそれをきちんと守るようにしましょう。
PHP_CodeSniffer は、どうやって PHP のコードをパースしているのですか?PHP_CodeSniffer は、PHP の組み込みのトークナイザ関数 を使用して PHP のコードをパースします。 |
各種マニュアル:
PHPマニュアル |
PEARマニュアル |
Smarty(英語)マニュアル |
PHP-GTKマニュアル |
「FAQ」をGoogle検索
|