Как исключить файлы/папки из проверки кода в PHPStorm?
У меня есть проект в PHPStorm, который содержит несколько библиотек (Zend, Doctrine,...), сгруппированных в папке library
.
При проверке кода я хочу, чтобы PHP-код в этих папках анализировался (так что PHPStorm будет знать, как объявляется Zend_Form
).
Тем не менее, я не хочу, чтобы сообщения, обнаруженные в этих папках, были отправлены, поскольку они не поддаются контролю.
Единственным обходным решением, которое я нашел до сих пор, является отметка каталогов как "Источник теста" и снимите флажок "Включить источники тестов" в окне проверки кода. Излишне говорить, что это не лучшее решение!
Ответы
Ответ 1
Обратитесь к функции Scopes. Вы можете определить настраиваемую область только для своего кода без папки библиотеки, а затем выполнить проверки только в этой области.
В настройках Inspections > также можно добавить области и включить/отключить каждую проверку для каждой области.
Ответ 2
Если вам просто нужно отключить проверки в одном или двух файлах, вы можете легко отключить его на уровне файла:
- Открыть файл с нарушением
- Нажмите "Код" → "Текущий анализ файлов"
- Установите ползунок для нарушения языка на "Нет"
(с использованием PHPStorm 8.0.2)
Ответ 3
Если вам нужно полностью исключить несколько файлов из любого анализа (например, скомпилированного php файла), например, он даже не существует, вы можете щелкнуть правой кнопкой мыши по файлу в исходном дереве и выбрать "Отметить как обычный текст". Это действие полностью удаляет любые проверки этого файла. С этим я удалил много уведомлений о "источниках дублирования" в Laravel 5.
Если вам нужно активировать его снова - еще раз щелкните правой кнопкой мыши и "Отметить как PHP".
Это работает хорошо для нескольких файлов. Если вам нужно исключить целую директорию со всем внутренним, используйте маркировку каталога из настроек или щелкните правой кнопкой мыши по каталогу и "Отметить каталог как → Исключено".
Ответ 4
Существует альтернативное решение. Вы можете добавить библиотеки "только для чтения" в Include path
в разделе Settings » PHP
.
Это не то же самое с параметром php.ini include_path
, просто ссылаясь на некоторые dirs как внешние, вне вашего контроля. Именно то, что вам нужно.
В результате
- нет проблем с определением областей, просто проверьте весь проект, если необходимо
- нет бесполезных надстройки управления версиями в libs
Ответ 5
Если вы хотите полностью исключить файл или папку из кода завершения и кода:
Щелкните правой кнопкой мыши папку или файл в вашем браузере файлов (слева) выберите "Отметить" → "исключено"
Что я хотел, я добавляю этот ответ здесь, потому что нашел этот вопрос в Google, когда искал ответ.