Heim > Artikel > Backend-Entwicklung > Tutorial zur Installation und Verwendung von PHP_CodeSniffer (automatisches Code-Inspektion-Spezifikationstool)
Wir alle achten bei unserer Entwicklung auf Codespezifikationen. Wenn Sie ein einzelner Entwickler sind, müssen Sie nur verstehen, ob der Code standardisiert ist oder nicht, aber in Teamzusammenarbeit , die Code-Vorschriften sind besonders wichtig. Im Folgenden stellen wir PHP_CodeSniffer vor, ein Tool, das Code-Spezifikationen automatisch überprüft.
PHP_CodeSniffer ist ein automatisiertes Tool zur Überprüfung der PHP-Codespezifikation.
CodeSniffer verfügt über mehrere integrierte Codespezifikationen wie MySource, PEAR, PHPCS, PSR1, PSR2, Squiz und Zend.
Natürlich können Sie auch eigene Code-Spezifikationen hinzufügen.
PHP_CodeSniffer-Lageradresse: https://github.com/squizlabs/PHP_CodeSniffer
PHP_CodeSniffer-Versionsfreigabeadresse: http://pear.php.net/package/PHP_CodeSniffer
PHP_CodeSniffer enthält zwei Tools: phpcs dient zur Überprüfung von Codespezifikationen und phpcbf wird zur Korrektur von Codespezifikationen verwendet.
PHP_CodeSniffer verfügt über mehrere Installationsmethoden.
1.1 Installation per ausführbarer Datei
Verwenden Sie den Git-Befehl, um den Warehouse-Quellcode herunterzuladen (oder direkt herunterzuladen) und führen Sie ihn dann direkt aus:
git clone https://github.com/squizlabs/PHP_CodeSniffer.git<br/>cd PHP_CodeSniffer<br/>php bin/phpcs -h<br/>php bin/phpcbf -h<br/>
Um nicht zu verwenden, kann die neueste Version von PEAR unter der Adresse heruntergeladen werden: http://pear.php.net/package/PHP_CodeSniffer/download
Zum Beispiel, wenn Sie 2.9.1 verwenden möchten, nach Wenn Sie PEAR herunterladen und dekomprimieren, lautet der auszuführende Befehl:
php scripts/phpcs -h<br/>php scripts/phpcbf -h<br/>
Der Unterschied zum Githuh-Download besteht darin, dass sich die Ausführungsdatei im Skriptverzeichnis befindet.
1.2 Phar-Datei-Installationsmethode
phar ist ein PHP-Archiv, das PHP-Dateien für den Service in einer Datei packt.
Linux-Systeme verwenden den Befehl, um die Phar-Datei herunterzuladen:
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar<br/>curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar<br/>
Für Windows-Systeme verwenden Sie den Browser, um auf die beiden obigen Links zuzugreifen und die beiden Phar-Dateien herunterzuladen.
Führen Sie dann im Verzeichnis der Phar-Datei aus:
php phpcs.phar -h<br/>php phpcbf.phar -h<br/>
Sie können die Hilfeinformationen von phpks und phpcbf sehen, die darauf hinweisen, dass die Installation erfolgreich war.
Hinweis:
Diese Methode muss sicherstellen, dass die ausführbare PHP-Datei zur PATH-Umgebung hinzugefügt wurde, andernfalls muss das absolute Verzeichnis angegeben werden
Diese beiden müssen jeweils hinzugefügt werden Sobald es ausgeführt wird, kopieren Sie die Phar-Datei in das entsprechende Verzeichnis und führen Sie dann den Zeilenbefehl php phpcs.phar xxx in diesem Verzeichnis aus Wird lokal installiert (Pear-Installationsmethode), können Sie PHP_CodeSniffer auch über Pear installieren, Befehl:
pear install PHP_CodeSniffer<br/>
Nach der Installation über Pear wird die CodeSniffer-Spezifikationsdatei unter /path/to/pear/PHP/CodeSniffer installiert /src/Standards.
1.4 Composer-InstallationsmethodeDie Composer-Installation ist ebenfalls sehr praktisch, ein Befehl:
composer global require "squizlabs/php_codesniffer=*"<br/>
Hinweis: Der Composer-Befehl muss hier vorhanden sein die Umgebungsvariable PATH. kann auch in der Composer.json-Datei verwendet werden:
{<br/> "require-dev": {<br/> "squizlabs/php_codesniffer": "3.*"<br/> }<br/>}<br/>
Führen Sie den Befehl nach Abschluss aus:
./vendor/bin/phpcs -h<br/>./vendor/bin/phpcbf -h<br/>1.5 Konfigurieren Sie phpcs und führen Sie ihn direkt im Befehl aus Zeile
Unter den oben genannten Methoden, mit Ausnahme der Pear-Installationsmethode, müssen Sie PHP voranstellen, wenn Sie den PHPC-Befehl in anderen Methoden ausführen möchten.
Wenn es von Linux bereitgestellt wird, da sich der Pfad der PHP-Ausführungsdatei bereits im Umgebungs-PATH befindet, fügen Sie den Bin-Pfad (oder Skripts-Pfad) zum PATH hinzu und Sie können den PHPC-Befehl im Terminal ausführen. Aber im Windows-System wird die Datei phpcs.bat tatsächlich ausgeführt, und diese Datei verweist auf die phpks-Datei im selben Verzeichnis.
In phpcs.bat müssen wir zwei Variablen konfigurieren, um den phpcs-Befehl in CMD korrekt auszuführen.
Wie folgt müssen Sie den absoluten Speicherort der Dateien php.exe und phpcs angeben:
if "%PHPBIN%" == "" set PHPBIN=D:\php56n\php.exe<br/>if not exist "%PHPBIN%" if "%PHP_PEAR_PHP_BIN%" neq "" goto USE_PEAR_PATH<br/>GOTO RUN<br/>:USE_PEAR_PATH<br/>set PHPBIN=%PHP_PEAR_PHP_BIN%<br/>:RUN<br/>"%PHPBIN%" "D:\www\PHP_CodeSniffer-2.9.1\scripts\phpcs" %*<br/>
Fügen Sie dann den Pfad D: wwwPHP_CodeSniffer-2.9.1scripts zu PATH hinzu, und Sie können ausführen phpks in CMD.
Hinweis: Auch phpcbf benötigt eine solche Änderung.
2 Verwendung von
Oben sehen wir, dass PHP_CodeSniffer zwei Befehle hat.
Standardmäßig verwendet PHP_CodeSniffer die PEAR-Spezifikation, um Code zu überprüfen.
2.1 Verwenden Sie den BefehlDer folgende Befehl verwendet die Standardspezifikation, um Dateien und Verzeichnisse zu überprüfen.
$ phpcs /path/to/code/myfile.php # 检查文件<br/>$ phpcs /path/to/code # 检查目录和子目录下的所有文件<br/>$ phpcs -l /path/to/code # 检查目录下的所有文件,不包括子目录<br/>$ phpcs /path/to/code/myfile.inc /path/to/code/my_dir # 检查文件和目录<br/>
2.2 Prüfergebnisse
Standardmäßig enthalten die Prüfergebnisse Fehler und Warnungen wie folgt:
$ phpcs /path/to/code/myfile.php<br/>FILE: /path/to/code/myfile.php<br/>--------------------------------------------------------------------------------<br/>FOUND 5 ERROR(S) AND 1 WARNING(S) AFFECTING 5 LINE(S)<br/>--------------------------------------------------------------------------------<br/> 2 | ERROR | Missing file doc comment<br/> 20 | ERROR | PHP keywords must be lowercase; expected "false" but found<br/> | | "FALSE"<br/> 47 | ERROR | Line not indented correctly; expected 4 spaces but found 1<br/> 47 | WARNING | Equals sign not aligned with surrounding assignments<br/> 51 | ERROR | Missing function doc comment<br/> 88 | ERROR | Line not indented correctly; expected 9 spaces but found 6<br/>--------------------------------------------------------------------------------<br/>
Wenn Sie nicht anzeigen möchten Warnungen, - n Parameter hinzufügen: $ phpcs -n /path/to/code/myfile.php<br/>
Nur die Zusammenfassung der Inspektionsergebnisse anzeigen:
$ phpcs --report=summary /path/to/code<br/>2.3 Spezifikationen angeben
Sie können die -- verwenden Standardparameter zur Angabe einer oder mehrerer Spezifikationen. Probieren Sie es aus.
$ phpcs --standard=PEAR /path/to/code/myfile.inc # 使用内置规范<br/>$ phpcs --standard=/path/to/MyStandard /path/to/code/myfile.inc # 使用指定路径下的规范<br/>$ phpcs --standard=PEAR,PHPCS,/path/to/MyStandard file.php # 使用多个规范<br/>$ phpcs --config-set default_standard Squiz # 修改默认规范为Squiz(原本是PEAR)<br/>
Bestehende Spezifikationen anzeigen: $ phpcs -i<br/>
$ phpcs -h<br/>
Weitere PHP-bezogene Kenntnisse finden Sie auf der
PHP-Chinese-Website!
Das obige ist der detaillierte Inhalt vonTutorial zur Installation und Verwendung von PHP_CodeSniffer (automatisches Code-Inspektion-Spezifikationstool). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!