前提
・windows10
・winndowsにphpをインストールしている
➡【windows10】windowsにphp7.4をインストールする方法
・windowsにcomposerをインストールしている
➡【composer】windows10にcomposerをインストールする
インストール
インストール
1 2 3 4 5 |
下記のコマンドを実行 composer global require squizlabs/php_codesniffer またはcomposer.pharがあるディレクトリで下記を実行 php composer.phar global require squizlabs/php_codesniffer |
下記の場所からパスを通す設定が可能
「コントロール パネル\すべてのコントロール パネル項目\システム>システム詳細設定>環境変数>Path」
今回はC:\Users\hoge\AppData\Roaming\Composer\vendor\binのパスを通した
確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
phpcs --helpでコマンドが出るか確認 Usage: phpcs [-nwlsaepqvi] [-d key[=value]] [--colors] [--no-colors] [--cache[=<cacheFile>]] [--no-cache] [--tab-width=<tabWidth>] [--report=<report>] [--report-file=<reportFile>] [--report-<report>=<reportFile>] [--report-width=<reportWidth>] [--basepath=<basepath>] [--bootstrap=<bootstrap>] [--severity=<severity>] [--error-severity=<severity>] [--warning-severity=<severity>] [--runtime-set key value] [--config-set key value] [--config-delete key] [--config-show] [--standard=<standard>] [--sniffs=<sniffs>] [--exclude=<sniffs>] [--encoding=<encoding>] [--parallel=<processes>] [--generator=<generator>] [--extensions=<extensions>] [--ignore=<patterns>] [--ignore-annotations] [--stdin-path=<stdinPath>] [--file-list=<fileList>] [--filter=<filter>] <file> - ... - Check STDIN instead of local files and directories -n Do not print warnings (shortcut for --warning-severity=0) -w Print both warnings and errors (this is the default) -l Local directory only, no recursion -s Show sniff codes in all reports -a Run interactively -e Explain a standard by showing the sniffs it includes -p Show progress of the run -q Quiet mode; disables progress and verbose output -m Stop error messages from being recorded (saves a lot of memory, but stops many reports from being used) -v Print processed files -vv Print ruleset and token output -vvv Print sniff processing information -i Show a list of installed coding standards -d Set the [key] php.ini value to [value] or [true] if value is omitted --help Print this help message --version Print version information --colors Use colors in output --no-colors Do not use colors in output (this is the default) --cache Cache results between runs --no-cache Do not cache results between runs (this is the default) --ignore-annotations Ignore all phpcs: annotations in code comments <cacheFile> Use a specific file for caching (uses a temporary file by default) <basepath> A path to strip from the front of file paths inside reports <bootstrap> A comma separated list of files to run before processing begins <encoding> The encoding of the files being checked (default is utf-8) <extensions> A comma separated list of file extensions to check The type of the file can be specified using: ext/type e.g., module/php,es/js <file> One or more files and/or directories to check <fileList> A file containing a list of files and/or directories to check (one per line) <filter> Use either the "gitmodified" or "gitstaged" filter, or specify the path to a custom filter class <generator> Use either the "HTML", "Markdown" or "Text" generator (forces documentation generation instead of checking) <patterns> A comma separated list of patterns to ignore files and directories <processes> How many files should be checked simultaneously (default is 1) <report> Print either the "full", "xml", "checkstyle", "csv" "json", "junit", "emacs", "source", "summary", "diff" "svnblame", "gitblame", "hgblame" or "notifysend" report, or specify the path to a custom report class (the "full" report is printed by default) <reportFile> Write the report to the specified file path <reportWidth> How many columns wide screen reports should be printed or set to "auto" to use current screen width, where supported <severity> The minimum severity required to display an error or warning <sniffs> A comma separated list of sniff codes to include or exclude from checking (all sniffs must be part of the specified standard) <standard> The name or path of the coding standard to use <stdinPath> If processing STDIN, the file path that STDIN will be processed as <tabWidth> The number of spaces each tab represents |
使ってみる
1 2 3 4 5 |
下記のコマンドでファイルの規約をチェックしてくれる phpcs --standard=PSR2 ファイル名.php パスを通していなくても下記のコードで動く C:\Users\userName\AppData\Roaming\Composer\vendor\bin\phpcs.bat --standard=PSR2 ファイル名.php |
仮想環境のファイルを読み込みたい
別サーバーで起動している仮想環境のファイルをsmb等でwinndowsのエクスプローラーで扱える状態にし、VSCodeで読み込んでいるファイルを扱っている場合、うまくコードチェックができません。
これを解決するにはファイルをマウントし、仮想ディスクに割り当てる必要があります