1

PHP_CodeSniffer には、コマンド ラインを実行する代わりに使用できる API がありますか?

したがって、PHP コードの文字列、$code、および PHP_CodeSniffer コードのロードを保証する Composer が与えられた場合、次のようなことができますか?

// Pseudocode!
$code_sniffer = new PHPCodeSniffer;
$result = $code_sniffer->sniff($code);

次のようなコマンドラインを使用するのではなく、

$result = exec(sprintf('echo %s | vendor/bin/phpcs', escapeshellarg($code)));
4

2 に答える 2

2

ありますが、それ以上のコードを書く必要があります。

ここで例を見てみましょう: https://gist.github.com/gsherwood/aafd2c16631a8a872f0c4a23916962ac

この例では、まだファイルに書き込まれていないコードの一部を盗聴し、使用する標準などをセットアップできます (ruleset.xml ファイルの場合もあります)。

PHP の代わりに JS トークナイザーを使用し、既存のファイルからコンテンツをプルする別の例は、https ://gist.github.com/gsherwood/f17cfc90f14a9b29eeb6b2e99e6e7f66 で入手できます。

多くのオプションを使用しないため、短くなります。

于 2017-11-13T05:00:46.807 に答える