- はじめに
- CodeSnifferとは
- PHPをWindowsにインストールする
- ComposerをWindowsにインストール
- phpstormの設定
- phpstormがPHP_CodeSnifferのエラーを出すことに成功
- まとめ
はじめに
こんにちは。エンジニアの仕事をしている、たかふみです。
本日は、Windows環境でCodeSniffer
をインストールし、phpstorm
で静的解析するにはどうしたらいいのか記事にしたいと思います
CodeSnifferとは
CodeSniffer
とはコードスタイルをチェックする、静的解析ツールです。
PHPのコードスタイルには、PSR-0
,PSR-2
,PSR-3
など様々なコードスタイルがあります。
通常、サーバーサイドでComposer
でグローバルインストールし、ファイルに対して実行するものです。
指定のコードスタイルに添っているかどうかチェックします。
$ vendor/bin/phpcs hoge.php
ソースを静的解析し、間違っているかどうかチェックできるのは便利なことですが、
いちいち実行するのは、面倒ですね。
そこで、PHPerの大好きなIDEである、phpstorm
でコード規約を実行できないか調査しました。
IDEでコード規約に添っているかどうかチェックするには、どうすればいいのでしょうかね。
試してみましょう。
PHPをWindowsにインストールする
もうインストールされていれば不要なのですが、
まずはPHPをWindowsにインストールすることが必須です。
以下、PHP公式からダウンロードしてください。
動作させたいPHPバージョンのダウンロードをクリックしてください。
スレッドセーフ版のzipをクリック
ダウンロードしたzipを解答してどこかのディレクトリに適宜配置してください。
PHPのパスを通すことを忘れずに
phpのパスを通さないと動かないと動作しないとで気をつけてください。
パスの通し方
・windowsマークをクリック
・設定をクリック
・左袖下部にある、下部にある、詳細情報をクリック
・下の方にある、システムの詳細設定をクリック
・詳細設定をクリック
・下部の環境変数をクリック
・Pathを選択し、編集をクリック
・新規を押下し、PHPのzipを解凍先を指定する。
phpがインストールされたか確認する
PowerShell
を開いて、phpが動作できることを確認してください。
PS C:\Users\strat> php -v PHP 7.4.24 (cli) (built: Sep 21 2021 13:38:25) ( ZTS Visual C++ 2017 x64 ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies
ComposerをWindowsにインストール
下記サイトから、Composer-setup.exe
をクリックしてダウンロードしてください。
たぶんポチポチボタンを押していけばインストールされます。
最後に、PowerShellを開いて、composerがインストールされたことを確認してください。
PS C:\Users\strat> composer -v ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 2.1.9 2021-10-05 09:47:38
php_codesnifferをcomposerからグローバルインストールします
下記コマンドでグローバルインストールしてください。
composer global require "squizlabs/php_codesniffer"
このようにインストールされます。
PS C:\Users\strat> composer global require "squizlabs/php_codesniffer" Changed current directory to C:/Users/strat/AppData/Roaming/Composer Using version ^3.6 for squizlabs/php_codesniffer ./composer.json has been created Running composer update squizlabs/php_codesniffer Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals - Locking squizlabs/php_codesniffer (3.6.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals - Downloading squizlabs/php_codesniffer (3.6.0) - Installing squizlabs/php_codesniffer (3.6.0): Extracting archive Generating autoload files
以下ディレクトリにインストールされました。
C:\Users\strat\AppData\Roaming\Composer\vendor\squizlabs\php_codesniffer
phpstormの設定
phpstormを開き、File
>settings
>PHP
Quality tool
>PHP_Codesniffer
から、composerからインストールしたphp_codesnifferの実行パス(phpcs.bat)を指定してください。
実行パスを指定した後、validationを押して異常なければ設定に問題はありません。
もし仮に、実行ファイルでないファイルを指定した場合は、エラーとなります。
次に、PHP_CodeSniffer Inspectionsを開き、
PHP_CodeSniffer validation
にチェックを入れ、Coding standardにお好みのコーディングスタイルを指定してください。
phpstormがPHP_CodeSnifferのエラーを出すことに成功
これで、phpstorm
でphpcs
のエラーを出すことに成功したはずです。
非推奨のコードを記述したところ、無事にphpcs
のエラーが出るようになりました。
まとめ
いかがでしたでしょうか
phpstorm
のお供に、静的コード解析を導入することで品質担保できたら良いですね!
皆様の開発のお役に立てたら光栄です。読んで頂いてありがとうございました。