PhpStormでCodeSnifferを使用しようとしています。
settings-> PHP-> CLI Interpreterで、 https://windows.php.net/)を使用してphp.exeImにリンクしました。 だけでなく、CygwinとXAMPPでも試してみました。
PhpStormは私に正しいPHPバージョン7.2.5とphp.iniを示しています
CodeSniffer構成で、phpcs.batを選択しました。[検証]をクリックすると、次のようになります。
実行できませんPHPコード
また、すべてをPATH
に追加しました
私は何か見落としてますか?
phpcs.bat
とphpcs
をPHPフォルダー-例:d:\program\php\phpcs
に配置する必要があります。CodeSniffer自体はd:\program\php\PEAR\PHP\CodeSniffer
に存在する必要があります-スクリプトautoload.php
とサブフォルダーsrc
である。
次に、Settings -> Languages & Frameworks -> PHP -> Code Sniffer
で、phpcs.bat
へのパスとValidate
へのパスを指定します。
次に、Settings -> Editor -> Inspections
でノードPHP Code Sniffer validation
を見つけて、それを有効にします。有効にすると、設定できるようになります。具体的には、コーディング標準を選択してください。
これは私のphpcs
です
#!D:\PROGRAM\Inet\Design\php\php.exe
<?php
/**
* PHP_CodeSniffer detects violations of a defined coding standard.
*
* @author Greg Sherwood <[email protected]>
* @copyright 2006-2015 Squiz Pty Ltd (ABN 77 084 670 600)
* @license https://github.com/squizlabs/PHP_CodeSniffer/blob/master/licence.txt BSD Licence
*/
if (is_file(__DIR__.'/../autoload.php') === true) {
include_once __DIR__.'/../autoload.php';
} else {
include_once 'PHP/CodeSniffer/autoload.php';
}
$runner = new PHP_CodeSniffer\Runner();
$exitCode = $runner->runPHPCS();
exit($exitCode);
これは私のphpcs.bat
です
@echo off
REM PHP_CodeSniffer detects violations of a defined coding standard.
REM
REM @author Greg Sherwood <[email protected]>
REM @copyright 2006-2015 Squiz Pty Ltd (ABN 77 084 670 600)
REM @license https://github.com/squizlabs/PHP_CodeSniffer/blob/master/licence.txt BSD Licence
if "%PHPBIN%" == "" set PHPBIN=D:\PROGRAM\Inet\Design\php\php.exe
if not exist "%PHPBIN%" if "%PHP_PEAR_PHP_BIN%" neq "" goto USE_PEAR_PATH
GOTO RUN
:USE_PEAR_PATH
set PHPBIN=%PHP_PEAR_PHP_BIN%
:RUN
"%PHPBIN%" "D:\PROGRAM\Inet\Design\php\phpcs" %*
これは、WindowsレジストリにインポートしたPEAR_ENV.reg
です。
REGEDIT4
[HKEY_CURRENT_USER\Environment]
"PHP_PEAR_SYSCONF_DIR"="D:\\PROGRAM\\Inet\\Design\\php"
"PHP_PEAR_INSTALL_DIR"="D:\\PROGRAM\\Inet\\Design\\php\\pear"
"PHP_PEAR_DOC_DIR"="D:\\PROGRAM\\Inet\\Design\\php\\docs"
"PHP_PEAR_BIN_DIR"="D:\\PROGRAM\\Inet\\Design\\php"
"PHP_PEAR_DATA_DIR"="D:\\PROGRAM\\Inet\\Design\\php\\data"
"PHP_PEAR_PHP_BIN"="D:\\PROGRAM\\Inet\\Design\\php\\php.exe"
"PHP_PEAR_TEST_DIR"="Z:\\Temp\\"
私はOpenServerをPHP 7.0-64xで使用しています。環境変数にはcomposerとPHPしかありません。
しかし、私がコンソールでそれをテストする前に、すべてがちょうど良いphpcsバージョンでした:3.3.2(最近では最新)このようなsmth:
C:\ OpenServer\domains\phpWorkingWithFiles\vendor\bin> phpcs --standard = PSR2 C:\ OpenServer\domains\phpWorkingWithFiles\classes\Recipe.php
またはこのように
C:\ OpenServer\domains\phpWorkingWithFiles> vendor\bin\phpcs classes/--colors
phpstormを再実行したのと同じエラーが発生し、動作を開始しました
私もこの問題を抱えていました;それから私はphpcs.batと同じディレクトリにあるphpcsを削除しました、そしてそれは働きました。
エラーテキストを確認するには、phpcliで実行してみてください。私の場合は次のとおりです。
$ php /home/alex/apps/code-style/code-style/scripts/phpcs.php
PHP Fatal error: require_once(): Failed opening required '/home/daniel/apps/code-style/code-style/scripts/../vendor/autoload.php' (include_path='.:/usr/share/php') in /home/daniel/apps/code-style/code-style/scripts/phpcs.php on line 3
(プロジェクトルートでcomposer install
コマンドを実行するのを忘れました)。
同じ問題が発生し、PHPがインストールされていませんでした。
コードスニファをロードできるようにするには、PHPを(PC /ラップトップにローカルに)インストールする必要があります!