PHP_CodeSniffer+ Eclipse + PHP Code Formatter Pluginでコーディング規約を守ったコーディング

公開日: : 最終更新日:2014/04/20 IT, Tool


1人でプログラミングをしているにしても、多人数でプログラミングをしているにしても、コーディング規約を用意し守るのが可読性を高める上でも効果的です。

ただ、コーディング規約を守るのも、個人の意識に頼るのは厳しいのでコーディング規約ツールを使うのが一般的でしょう。
PHPでデファクトスタンダードのコーディング規約ツールがあるかは分かりませんが、調べた限りでは「PHP_CodeSniffer」が便利かなと思います。
※色々と検索してみたけど、本当にデファクトスタンダードはないんだろうか?

インストールの仕方から利用方法まで、参考サイトに詳細に書いているので、私はどのように使っているかだけを紹介します。

 開発環境

  • Eclipse PDTを利用

    • PHP Code Formatter Plugin
  • PHP_CodeSniffer

今回のコーディング規約ツールは、Eclipseで利用します。
また、Eclipseに標準搭載のフォーマッターは使えないのでEclipseのプラグインの「PHP Code Formatter Plugin」も併せてを導入。

 PHP_CodeSnifferの設定

  • 参考サイトの1を参考にし、EclipseからPHP_CodeSnifferを実行できるように設定。

下記コマンドでインストール
C:php5>pear install PHP_CodeSniffer
@nifty:@homepage:エラー

  • 外部実行ツールとして設定する。

  • 外部実行ツールにショートカットキーを割り当てる。

    • 参考サイトの2を参考にして設定。

Ctrl + Shift + Lと2回押して、キーバインディング設定画面を表示して設定。
EclipseのPDT使いながらショートカット一発でphpCodeBeautifierでソース整形。 –  

 PHP Code Formatter Pluginの設定

※以前は、prototypeだったのですが最近prototypeが外れて1.0になってました。

  • 参考サイトの3からファイルをダウンロードして解凍したらeclipseフォルダにコピーします。
  • 「ウィンドウ」-「設定」-「PHP」-「コード・スタイル」-「フォーマッター」から設定。

デフォルトのフォーマッターに比べてだいぶ便利になっているかと思います。
チームでコーディング規約を統一する際には、このプラグインの設定ファイをエクスポートして共有すれば良いかと思います。

 実行

以上を設定した後、以下のようにしてコーディング規約ツールを使っています。

  1. PHPのソースをコーデイング。
  2. Ctrl + Shift + F

    • これでPHP Code Formatter Pluginで整形されます。
  3. PHP_CodeSnifferをショートカットキーで呼び出します。

    • 結果がEclipse上に表示されます。
  4. 規約違反の箇所を確認し、修正。

Javaのコード規約チェックツールのCheckStyleみたくソース上に指摘箇所が表示されて欲しいですが、上記だけでもだいぶ便利かなと思います。

 参考サイト

  1. @nifty:@homepage:エラー
  2. EclipseのPDT使いながらショートカット一発でphpCodeBeautifierでソース整形。 –  
  3. エラー – SourceForge.JP

広告

関連記事

no image

order byでハマったこと -order by、group byの処理順序-

CakePHPでorder byとgroup byを使っていてはまったことについてのメモ。 * 

記事を読む

no image

Androidアプリ開発 -リストをタッチして別ページ表示-

* 前提 -「設定画面」で各種項目を設定。 --Activity:ConfigActivity --

記事を読む

no image

iPhoneアプリ開発 -UIButtonのTouch Down、Touch up Inside、Touch up Outsideの使い方-

* Touch DownとTouch up Inside、Touch up Outsideの違い

記事を読む

Jenkins + iPhoneアプリ(2) -ローカルリポジトリにあるデータからipaファイル生成-

* これまで - * 最終目標 -(開発者)git(リモートリポジトリ)にソースをコミット

記事を読む

dl-1

CakePHP2系にTwigを導入

CakePHP2系でも慣れているSmartyを使おうと思ったものの、良いプラグインが見つからず断念。

記事を読む

no image

jQuery Mobileの初期設定 -jQuery Mobieを利用時にページ内リンクさせたい-

* 前提 jQuery Mobileを利用していて、以下のタグを使ってページ内遷移したいことがありま

記事を読む

no image

github-flowを使っての開発(3) -1つのプロジェクトを複数人で開発-

今まで2回ほどgithub-flowをもとにした開発の流れを書きました。 今回は、複数人で開発をする

記事を読む

no image

mailtoリンクの件名や本文の文字化け -N-02Aのケース-

* mailtoリンクの仕様 携帯電話用のWebサイトではmailtoリンクを使うことが多いと思い

記事を読む

no image

PhoneGapを触ってみた(3) -画像を扱う(Camera APIを使ってみる)-

今回は、PhoneGapのCamera APIを使って携帯のアルバムにある画像を扱ってみます。

記事を読む

no image

iPhoneアプリ開発 -Bundle identifierを変えてはまった-

* 現象 Bundle identifierを変えた際にXcodeで実機に転送しようとすると以下のエ

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑