È necessario creare uno standard di codifica personalizzato se si desidera ignorare quelli integrati. Si tratta semplicemente di creare un file XML con la definizione dello standard.
Nel tuo caso, vuoi l'intero standard di codifica Zend, ma non vuoi la particolare regola della convenzione di denominazione sui nomi di variabili. Quindi, è necessario creare un file chiamato mystandard.xml
(chiamarlo quello che vuoi e metterlo dove vuoi) e mettere nei seguenti contenuti:
<?xml version="1.0"?>
<ruleset name="MyStandard">
<description>My custom Zend coding standard.</description>
<rule ref="Zend">
<exclude name="Zend.NamingConventions.ValidVariableName"/>
</rule>
</ruleset>
C'è molto di più si può fare per personalizzare il vostro standard, tra cui portare i controlli da altri standard, sovrascrivere i messaggi o attenuarne alcuni. Puoi dare un'occhiata ai documenti qui: http://pear.php.net/manual/en/package.php.php-codesniffer.annotated-ruleset.php
Ultimo controllo, PHPStorm non ti ha permesso di usare standard di codifica personalizzati, per qualsiasi motivo. Normalmente, devi semplicemente digitare il nome dello standard come percorso completo del file mystandard.xml
. Se PHPStorm continua a non farlo, l'unico modo per ingannarlo è installare effettivamente lo standard personalizzato.
Nota che questo non è qualcosa che normalmente devi fare ed è un po 'complicato. Ma se vuoi provarlo, ecco come lo fai:
- Trova dove PHPCS è installato sul tuo sistema. Se non sai dove sia, prova a
pear config-show | grep php_dir
. PHP_CodeSniffer sarà in una directory qui sotto. Per me, PEAR è installato in /usr/local/PEAR
, così PHP_CodeSniffer si trova in /usr/local/PEAR/PHP/CodeSniffer
- Creare una nuova directory chiamata
MyStandard
sotto /usr/local/PEAR/PHP/CodeSniffer/Standards
- Mettere il file
mystandard.xml
direttamente in là, ma rinominarlo in ruleset.xml
Per confermare la tua è stato installato lo standard, eseguire phpcs -i
. Si dovrebbe vedere
The installed coding standards are MySource, MyStandard, PEAR, PHPCS, Squiz and Zend
Ora, PhpStorm mostrerà (si spera) MyStandard
come opzione nel menu a discesa. Se non viene visualizzato, probabilmente hanno codificato l'elenco e non ci sarà alcun modo per farlo funzionare senza l'hacking dello standard di codifica Zend direttamente.
Spero che l'informazione ti aiuti a trovare una soluzione. In caso contrario, è sempre possibile eseguire PHPCS direttamente sulla riga di comando utilizzando il vostro standard personalizzato:
phpcs --standard=/path/to/mystandard.xml /path/to/code
Ho trascorso la maggior parte del pomeriggio cercando di farlo funzionare. PHPStorm non caricherà nemmeno l'elenco degli standard installati, le uniche opzioni nelle impostazioni dell'ispettore sono vuote e personalizzate e persino selezionando l'opzione personalizzata l'opzione di convalida non viene mai visualizzata. Posso ottenere phPC per eseguire correttamente CLI, ma sarebbe bello farlo funzionare come prescritto nei documenti per PHPStorm. –