PHP_CodeSniffer CLI

PHP_CodeSniffer, CLI проверки PHP, применяет правила проекта локально и в CI: команда согласует единый стандарт оформления.

  • 1 572 ★ репозитория
  • Последний коммит
  • BSD-3-Clause
CLI

Расширенный доступ

Почему такой уровень

  • Команда `phpcs` читает исходники, а `phpcbf` меняет файлы; подключенные правила могут запускать внешние программы.
Все причины и проверки

phpcsstandards/php_codesniffer

Установка

Ручная установка

curl -OL https://phars.phpcodesniffer.com/phpcs.phar
curl -OL https://phars.phpcodesniffer.com/phpcbf.phar

Первые команды загрузки PHAR из README; запускать через PHP после проверки файлов.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Команда `phpcs` читает исходники, а `phpcbf` меняет файлы; подключенные правила могут запускать внешние программы.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

PHP_CodeSniffer включает две команды для поддержания стандартов PHP-кода. phpcs разбирает файлы и выводит нарушения выбранных правил, а phpcbf исправляет поддерживаемые замечания. Проверку можно направить на один файл или каталог. Правила проекта хранятся в конфигурации, чтобы локальная работа и CI использовали одинаковые требования. По умолчанию выбран PSR12, но стандарт можно заменить. Отчет показывает нарушения примененного набора правил; сам выбор стандарта остается решением команды.

Для кого. Сопровождающим PHP-приложения командам, которым нужно проверять единый стандарт кода и отделять отчет от автоисправлений.

Подходит, если

  • Перед ревью PHP-изменения проходят согласованные правила оформления.
  • Команда сохраняет стандарт проекта в конфигурации вместо набора личных настроек редактора.
  • Большой каталог сначала проверяют без изменения исходников.
  • После просмотра отчета разработчик запускает автоисправления отдельным шагом.

Не подходит, если

  • Проверка должна доказывать функциональную корректность приложения.
  • Автоисправления нельзя просмотреть в diff перед коммитом.
  • Среда использует PHP старше минимально поддерживаемой версии.

Пример запроса к агенту

Проверь PHP-каталог через phpcs по нашему ruleset и сгруппируй замечания. phpcbf пока не запускай.

Ограничения

Нужен PHP 7.2.0 или новее; отдельные проверки могут требовать дополнительные расширения или внешние программы. Стандарт PSR12 включен по умолчанию, поэтому для другого соглашения настройте ruleset до первой оценки. Даже выпуск с исправлениями может содержать другие сообщения и исправления, так что закрепляйте версию пакета в CI. Команда `phpcbf` меняет исходники и не гарантирует сохранение всех намерений автора без просмотра diff и запуска тестов.

Как отключить. Уберите проверку из CI и хуков, затем удалите пакет или скачанные PHAR-файлы. Примененные исправления остаются в рабочем коде.

Частые вопросы

Чем отличаются две команды?

phpcs сообщает о нарушениях, phpcbf исправляет доступные случаи. Начинайте с отчета.

Какой стандарт выбран по умолчанию?

PSR12. Для другого стандарта используйте `--standard` или конфигурацию проекта.

Почему в Composer осталось имя squizlabs?

Текущий проект продолжает прежний пакет. Используйте документированное имя зависимости, а источник обновлений проверяйте у PHPCSStandards.

Можно ли проверить целый каталог?

Да. Передайте его путь phpcs. Сначала убедитесь, что правила исключают ненужные файлы.

Как проверить загруженный PHAR?

Для проверки происхождения `phpcs.phar` есть команда `gh attestation verify phpcs.phar -o PHPCSStandards`. У выпусков также есть подпись; порядок ее проверки приведен в README проекта.

Обсуждение

Вопросов и отзывов пока нет.

ComposerRequireChecker находит PHP-символы и расширения, которые использует код без объявления прямых зависимостей Composer.

CLIРасширенный доступ1 тыс.Звезды репозитория

Скилл состязательного аудита кода: Hunter ищет ошибки, Skeptic их оспаривает, Referee выносит вердикт, а правки без вашего разрешения не вносятся

СкиллРасширенный доступ549Звезды репозитория

Qlty CLI показывает дубли и сложные участки кода до рефакторинга; автоматическое форматирование запускается отдельно.

CLIРасширенный доступ3,2 тыс.Звезды репозитория
Российский стек

Плагин Claude Code и OpenCode, который не дает закончить сессию, пока правки 1С не прошли проверку стандартов, архитектуры и XML

ПлагинРасширенный доступ49Звезды репозитория
Официальный

CLI для замеров производительности и поиска регрессий; в репозитории лежит плагин с двумя скиллами и MCP для Claude Code и Cursor

CLIРасширенный доступ385Звезды репозитория

Habit Hooks запускает линтеры после правок ИИ-агента и превращает каждое нарушение в короткую инструкцию, как исправить код

CLIРасширенный доступ250Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
PHP_CodeSniffer (эта карточка)нет1 572
Semgrepдане нужна17 523PHP_CodeSniffer проверяет стандарты оформления PHP и исправляет часть нарушений; Semgrep ищет шаблоны ошибок и уязвимостей в нескольких языках.
ComposerRequireCheckerнет1 011ComposerRequireChecker находит PHP-символы и расширения, которые использует код без объявления прямых зависимостей Composer.
sccнетне нужна8 860scc считает строки кода, комментарии и сложность, анализирует историю Git и дает агенту те же сведения через встроенный MCP.

Коротко о README

PHPCSStandards сопровождает продолжение проекта Squizlabs, сохранив имя Composer-пакета. Кроме Composer, доступны поставки PHAR и установка через Phive.

Бейдж для README

Сообщить о проблеме

Foxx AIPHP_CodeSniffer
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.