Пользуясь ответом полковника Спонца, я делал это много раз, расширяя класс, который хочу переопределить. Расширяя класс, вам не нужно ничего дублировать. В метод (ы), который вы хотите настроить, просто добавьте свой настроенный код и затем вызовите parent::method_name()
, чтобы выполнить тот же метод суперкласса. Вы получаете все преимущества обоих. Вызовы методов, которые не существуют в подклассе, будут выполняться для суперкласса.
Следует отметить, что эта стратегия является базовым ООП и не ограничивается Symfony или даже PHP.