Хоть и прошло много лет, а в груди все еще ёкает при наступлении первого числа осени!)
Итак, можно сказать уже последние RFC перед релизом
PHP 8.3: PHP CLI Lint (php -l) поддерживает проверку нескольких файлов одновременно
Как вы знали (или узнаете сейчас) PHP в CLI предоставляет функцию Linting, которая проверяет переданное имя файла на наличие синтаксических ошибок. Это полезно для быстрой проверки PHP-файла или фрагмента перед выполнением.
До PHP 8.3 было невозможно выполнить анализ нескольких файлов PHP за один вызов; независимо от количества предоставленных файлов, PHP CLI анализирует только первый файл:
php -l somefile.phpНачиная с PHP 8.3, можно передавать несколько файлов PHP, и PHP CLI проверяет их все за один вызов:
// No syntax errors detected in somefile.php
php -l somefile.php otherfile.phpЕсли линтер обнаруживает какие-либо ошибки в любом из предоставленных файлов, он показывает ошибку и переходит к остальной части списка. Если какой-либо из файлов не прошел проверку, он выдает ошибку:
// No syntax errors detected in somefile.php
// No syntax errors detected in otherfile.php
- Если файл был недоступен, код выхода будет 1.
- Если какой-либо из файлов не удалось валидировать, код выхода будет 255.
- Если присутствуют оба условия ошибки, код выхода будет 1.
Помимо передачи нескольких имен файлов по отдельности, также можно использовать шаблон glob для проверки нескольких файлов:
php -l src/*.php src/**/*.php