[Atom] PHPMDを導入する方法(Windows)

2 min read

Windows 上の PHP 環境で PHPMD を利用してみる。

環境

こんな人向け。
  • Windows で開発
  • PHPの実行はゲストOS上(Vagrantなど使用)で行っているが、コーディングはWindows上

PHPの環境を構築する

WindowsでPHPを簡単に構築するなら、XAMPP。 もしPHPの動作環境がWindows上にないなら入れておく。

Eclipse に同梱されているものでも良い。

XAMPP を導入した場合、以下に PHP の各モジュールが配置される。

C:\xampp\php

Composerを導入

公式サイトにWindowsのインストーラも用意されているが、自分の環境では上手く行かなかった。なので、インストーラは使わないで導入したいと思う。

OpenSSL

あらかじめOpenSSLを有効にしておく必要がある。(XAMPPは有効になっていた) php.iniの以下のコメントアウトを外す。
;extension=php_openssl.dll

Composer

以下のコマンドで導入できる。
C:\xampp\php>php -r "readfile('https://getcomposer.org/installer');" | php

PHPMDのインストール

composer.json

php のあるディレクトリ(自分の場合は c:\xampp\php)に以下の様なcomposer.jsonを配置する。 (PHPCSも一緒に入れたのでこんな風になっているが…)
{
    "require": {
        "squizlabs/php_codesniffer": "*",
        "phpmd/phpmd": "*"
    }
}

composer install

以下のコマンドを実行する。
C:\xampp\php>php composer.phar install

完了すると PHPMD が導入されているはず。

確認

同じ手順を踏んでいれば以下にPHPMDが配置されている。
C:\xampp\php\vendor\bin\phpmd

Atomで使用する

Linter

以下のLinterをインストールする。
apm install linter
apm install linter-phpmd

linter-phpmdの設定

.atom/config.csonに以下の記述をする。
"linter-phpmd":
    executablePath: "C:\\xampp\\php\\vendor\\bin\\phpmd"
    rulesets: "cleancode,codesize,controversial,design,unusedcode"

rulesetsはお好みで。

確認

適当なphpファイルを編集してみる。(保存など) 問題があった場合、指摘箇所に波線が表示され、指摘を修正すると表示が消える。