Вам нужно будет создать собственный стандарт кодирования, если вы хотите переопределить встроенные. Это всего лишь вопрос создания файла XML с определением стандарта.
В вашем случае вам нужен весь стандарт кодирования Zend, но вам не нужно конкретное правило соглашения об именах для имен переменных. Таким образом, вы должны создать файл с именем mystandard.xml
(назовите его как хотите и поместите куда угодно) и поместите в него следующее содержимое:
<?xml version="1.0"?>
<ruleset name="MyStandard">
<description>My custom Zend coding standard.</description>
<rule ref="Zend">
<exclude name="Zend.NamingConventions.ValidVariableName"/>
</rule>
</ruleset>
Вы можете сделать гораздо больше, чтобы настроить свой стандарт, в том числе добавить проверки из других стандартов, перезаписать сообщения или отключить звук некоторых из них. Вы можете ознакомиться с документацией здесь: http://pear.php.net/manual/en/package.php.php-codesniffer.annotated-ruleset.php
Последнее, что я проверял, PHPStorm по какой-то причине не позволял вам использовать собственные стандарты кодирования. Обычно вы просто вводите имя стандарта в качестве полного пути к файлу mystandard.xml
. Если PHPStorm по-прежнему не позволяет вам это сделать, единственный способ обмануть его — установить собственный стандарт.
Обратите внимание, что это не то, что вам обычно нужно делать, и это немного сложно. Но если вы хотите попробовать, вот как вы это делаете:
- Найдите, где в вашей системе установлен PHPCS. Если вы не знаете, где это, попробуйте
pear config-show | grep php_dir
. PHP_CodeSniffer будет находиться в подкаталоге. У меня PEAR установлен в /usr/local/PEAR
, поэтому PHP_CodeSniffer находится в /usr/local/PEAR/PHP/CodeSniffer
- Создайте новый каталог с именем
MyStandard
под /usr/local/PEAR/PHP/CodeSniffer/Standards
- Поместите файл
mystandard.xml
прямо туда, но переименуйте его в ruleset.xml
.
Чтобы убедиться, что ваш стандарт установлен, запустите phpcs -i
. Тебе следует увидеть
The installed coding standards are MySource, MyStandard, PEAR, PHPCS, Squiz and Zend
Теперь PHPStorm покажет (надеюсь) MyStandard
в качестве опции в раскрывающемся списке. Если он не отображается, то они, вероятно, жестко запрограммировали список, и не будет никакого способа заставить его работать, не взломав стандарт кодирования Zend напрямую.
Я надеюсь, что информация поможет вам найти решение. Если нет, вы всегда можете запустить PHPCS непосредственно из командной строки, используя собственный стандарт:
phpcs --standard=/path/to/mystandard.xml /path/to/code
person
Greg Sherwood
schedule
15.05.2012