Попробуйте подумать, что у вас есть данные и вам нужно их обработать, чтобы получить результат. ООП - это просто инкапсуляция в капсулу методов для обработки данных объекта и капсула эта называется Объект, прототипом которого является класс. Могу сказать что вначале недостаточно ООП. Нужно и технологию программирования освоить и структуры данных знать - хотя бы основные, математику школьную.
Помимо еще и специфику, PHP - это Backend, а он впервую очередь получает запрос от клиента, обрабатывает его, если нужно запрашивает из BD нужные данные и возвращает ответ.
Соответственно: На какие вопросы надо ответить чтобы решать эти задачи в виде данных? Получить запрос (Обработать запрос (Что за запрос, удаление, апдейт, создание или фильтр какой, посмотреть его входящие параметры, прочитать HTTP заголовки, запрос можно классифицировать сложным URL адресом, который в свою очередь можно классифицировать и соотнести к какой-то реально сущность book/1?new=true&filter=asc, соответственно есть у вас есть Front Controller - то запрос по книжкам можно отнести к контроллеру Books (А контроллер часть паттерна MVC, контроллер будет работать с моделью, модель может напрямую общаться с BD или передаваться какому-то сервису который общается с BD (ORM, SQL with Driver). Соответственно вы в модели запрашиваете данные, проверяете данные, обновляете, внедряете бизнесс логику и только когда это сделали, возращаете данные готовые для пользователя, но только данные пользователю не интересны, вам нужно обернуть данные в HTML, проставить значения, интегрировать в верстку, тут уже приходят на помощь вьюшки, шаблонизаторы, так как ответ может быть не HTML, то модель нужно сериализовать в JSON. Соответственно все эти объекты у которых есть данные имеют методы для работы со своими данными. А общение между объектами путем отправки друг-другу сообщений (petya.give(beer, vasya). Отношение между ними будет осуществляться либо вложение объектов в друг-друга (композиция), либо копированием свойств между объектами (иерархия, наследование). Определять то что умеет объект, будет его интерфейс (где уже вступают в силу модификаторы доступа).
Соответственно кратко:
Обработка данных внутри методов (Алгоритмы и структуры данных)
Общение между объектами ООП (Объектно ориентированное программирование)
Архитектура приложения на уровне объектов (Дизайн паттерны, композиция, агрегация)
Выполнение последовательных операций (Императивное программирование)
Получение A и превращение A в B с хитроумными сплетениями (Функциональное программирование)
Выполнение двух операций одновременно и синхронизация между ними (Параллельное программирование)
Удачи!