PHPプログラムに関する各種メモ書き

PHPMD で PHPソースのチェックを行う

● PHPMDとは?

バグにつながりそうな怪しい ソースコードをチェックして教えてくれる php md。
コーディング時に必ず使うようにしておくとミスやバグが減るので是非使いましょう

● PHPMDのインストール

1. composer コマンドからインストールします

composer global require phpmd/phpmd

2. シェルが bash の場合は次のコマンドでパスを追加しておきます

echo 'export PATH=$HOME/.composer/vendor/bin:$PATH' >> .bash_profile
source .bash_profile

3. phpmd コマンドを入力してパスが通ってるか確認します

phpmd

● PHPMDで phpソースコードのチェックを行う

(ソースファイル myfile.php チェックしテキストデータで結果を受け取る。チェックする項目は
codesize,controversial,design,naming,unusedcode)

phpmd  myfile.php  text  codesize,design,naming,unusedcode

オプションの意味

codesize	コードが大きすぎないかチェック
controversial	命名規則など議論の余地がある部分を検出するチェック
design	設計上の関連のチェック
naming	変数名など名前関連のチェック
unusedcode	使われていない変数のチェック
cleancode	綺麗なコードかチェック

書式は以下の通りです

phpmd (phpファイル名) ( text または xml または html ) (オプションをカンマで区切る)

引用 : https://simple-it-life.com/?p=761

● エディタ SublimeTextで PHPMDを使う

次のパッケージをインストールします

SublimeLinter
SublimeLinter-phpmd

・SublimeLinter-phpmdの設定方法

【Package Settings】→【SublimeLinter】→【Settings - User】に記述があります。

設定例: (ルールセットから controversial, design, naming を取り除いています)

            "phpmd": {
                "@disable": false,
                "args": [],
                "excludes": [],
                "rulesets": "cleancode,codesize,unusedcode"
            },

また反応速度が速いとオートコンプリートと機能がバッティングしてしまうので、SublimeLinterのDelayの値を少し多めにしてやると良いと思います

設定例: ディレイ値を増やす

        "delay": 0.75,

これで PHPファイルを開いているときに自動的にソースのおかしそうなところを指摘してくれます。

関連エントリー

No.1120
07/20 17:29

edit

エラー対処
composer