Symfony + Roadrunner: как отлаживать приложение?
Многие современные PHP-приложения уже не работают по старой модели «shared nothing», не сохраняющей состояние между запросами. Для этого в PHP 7.4 появился Preload, но пока он работает не совсем стабильно, хорошим решением является использование Roadrunner.
Последний, к сожалению, накладывает некоторые неудобства на привычный процесс разработки. Популярные PHP-фреймворки (Laravel, Symfony) используют компонент symfony/var-dumper, который конфликтует с Roadrunner, исполняющимся из php-cli. Если вы попытаетесь использовать функцию dd() или dump(), вы увидите следующее:
worker error: invalid data found in the buffer (possible echo)
Как решить эту проблему?
Для Symfony используйте symfony-roadrunner-bundle. Этот бандл позволит вам использовать функцию dd() так, как вы ее привыкли. Аналогичный пакет есть для Laravel: stacked-dumper-laravel.