Хабр Курсы для всех
РЕКЛАМА
Большая витрина: от крупнейших школ до частных авторов. Сравнивайте по цене, длительности, формату и выбирайте самый подходящий курс!
SymfonyClientController. В них вы вполне можете взаимодействовать с создаваемым объектом Response и навешивать на него заголовки и всё остальное. Идея в том, что только контроллер-адаптер остается связанным с фреймворком, и если вдруг вы решите ваш контроллер перенести на фреймворк, где нет HttpFoundation, то вам надо будет просто реализовать свой контроллер-адаптер, который взаимодействовал бы уже с другим фреймворком.
Независимые от фреймворка контроллеры. Последние штрихи