Какое приложение написать для понимания ООП?
на пхпна пхп есть два мира - академический и реальный

в академическом мире люди пишут красивый ООП код, классы, интерфейсы и тд. Это же все спрашивают на собеседованиях. 
в реальном мире, в реальной работе, зачастую всё ООП заканчивается одними классами, редко трейты, редко интерфейсы, наследование не далее одного потомка. Особенно если уже используешь готовый фреймворк, где за тебя почти все сделано. 

php - не лучший язык, что бы на нем писать "полноценные" приложения на пхп. там должна быть какая-то ну очень сложная бизнес-логика.  

можно, конечно, нарисовать кучу классов, но это будет "ООП ради ООП"
Надо писать социальную сеть. Только тогда ты поймёшь ООП