PHP Code Sniffer в основном используется для обнаружения нарушений данного стандарта кодирования, такого как PSR-2. Он имеет конфигурации для разных стилей, и вы можете настроить вручную каждое из правил.
PHP Mess Detector больше ориентирован на качество самого кода - например, сложность функций, ненужные конструкции, правила, определяющие чистый код, и т. Д. Аналогичным образом вы можете настроить каждое из предопределенных правил - независимо от того, хотите ли вы, чтобы они применялись или нет. , и возможный порог для некоторых проверок.
Чтобы ответить на ваши вопросы - да, ВСЕ правила PHP MD могут быть записаны как снифферы CodeSniffer, но пока у кого-то не будет времени и терпения, мы можем продолжать использовать оба :)
Например, некоторые правила PHPMD уже существуют в PHPCS, например правила сложности: https://github.com/squizlabs/PHP_CodeSniffer/blob/master/src/Standards/Generic/Sniffs/Metrics/CyclomaticComplexitySniff.php
Также для размеров функций / методов и других подобных проверок в PHPMD вот стандарт для PHPCS, в котором есть некоторые из них:
https://github.com/object-calisthenics/phpcs-calisthenics-rules
И вы можете поискать больше, если вам действительно нравится все имитировать. И сами заполните недостающие.
Но в большинстве случаев вы можете использовать оба и не беспокоиться об их объединении, если у вас нет времени, терпения или некоторых аппаратных / вычислительных / временных ограничений.
person
vuryss
schedule
04.04.2020