В чем практическая польза от такого подхода?
https://ru.wikipedia.org/wiki/Интерфейс_(объектно-...
хотя написано относительно других яп, но многое справедливо и по отношению к php.
php.net/manual/ru/language.oop5.interfaces.php
Как и сказал diamond - для унификации кода.
У вас может быть много разных типов страниц. Например, новостные, ленты видеороликов, ещё что-нибудь. Все они чем-то друг от друга отличаются. Но для общей функциональности можно использовать один код (DRY) - пагинация, комментарии, ещё что-нибудь. Интерфейс даёт вам и вашему коду уверенность благодаря ранее (при реализации интерфейса) заключённому соглашению, что класс, например, реализует нужные методы.
Либо же, например, вы можете осуществлять с помощью интерфейсов какие-то другие вещи. Например, вам нужно что-то сделать, когда в Doctrine происходит Flush определённой группы объектов. Вычленить их из общей массы можно в том числе с помощью интерфейса.