Устранение ошибок PHP и PHP CodeSniffer
macOS по-прежнему поставляется с PHP (хотя то, как это выглядит для будущих версий ОС , вероятно, каким- то образом изменится).
В любом случае, представьте, что вы находитесь в ситуации, когда вы работаете над проектом, для которого требуются три разных компонента:
- PHP,
- Набор стандартов кодирования,
- PHP CodeSniffer, которые работают с указанными стандартами кодирования,
- Невозможность должным образом увидеть результаты прослушивания кода ни в вашем терминале, ни в вашей IDE.
Когда это происходит, это почти всегда является результатом версии PHP, версии различных зависимостей и проверки того, что все они хорошо работают вместе.
Короче говоря, речь идет о том, чтобы такие инструменты, как PHP CodeSniffer, хорошо работали с той же версией PHP, которую вы установили. И в этом случае самое последнее и самое лучшее не обязательно лучший способ действий.
Однако это недалеко. И на следующих шагах вы сможете заставить все работать именно так, как необходимо для вашей конкретной настройки.
Ошибки PHP и PHP CodeSniffer
Я предполагаю, что вы используете последнюю версию macOS и у вас уже установлен PHP и работает вместе с Hombrew. Если да, пропустите следующий раздел.
Установка доморощенного
Если нет, обязательно выполните следующие команды:
$ xcode-select --install
Это установит необходимые инструменты для использования Homebrew.
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
После этого запустите в терминале следующее:
$ brew --version
И вы должны увидеть что-то вроде этого:
Если вы привыкли использовать Homebrew, неплохо запустить следующее (хотя это и не обязательно):
$ brew doctor
$ brew cleanup
Как только это будет сделано, вы будете готовы установить другую версию (или даже версии) PHP.
Установка совместимой версии PHP
На момент написания этого поста я обнаружил, что PHP 7.3.21 и PHP CodeSniffer 3.3.1 лучше всего работают друг с другом.
Чтобы установить PHP той версии PHP, которую вы можете запустить:
$ brew install php@7.3
Это должно автоматически связать эту версию PHP с тем, что вы уже установили. Вы можете убедиться в этом, еще раз запустив:
$ php -v
И вы должны увидеть PHP 7.3.21.
Как насчет PHP CodeSniffer?
Есть несколько способов установить этот конкретный пакет, но я фанат Composer, поэтому обо всем позаботится выполнение следующего:
$ composer global require "squizlabs/php_codesniffer=3.*"
И это должно обернуть все, что вам нужно для PHP CodeSniffer.
Ресурсы
Это должно устранить любые ошибки, которые вы видите в своем терминале и/или в вашей IDE, связанные с ошибками PHP и PHP CodeSniffer. Для получения дополнительной информации обо всем, что вы видели здесь, ознакомьтесь со следующим: