Вы меня, конечно же, извините, но все же...
ООП... тот же Класс... что такое, по сути Класс? Класс - это тип данных. Это структурированный тип данных (забудем на время об ужасах php, где можно говна наложить в объект, и свойств ему напихать "на лету").
А работать с конкретным типом намного приятнее, удобнее и логичнее, чем прыгать и выискивать в документации имена ключей ассоциативных массивов с данными.
Опять же, скорость разработки. Любая IDE по горячей клавише вывалит весь список свойств и методов класса.
Как это выглядит в процедурном стиле? Опять читать документацию к проекту про ключи массивов...
Если это мало-небольшой магазин, то еще куда ни шло.
А если проект большой. Если команда большая. Git и все дела.
Нет, господа, я категорически требую как минимум Интрфейсы с сигнатурами к методам, дабы после коммита коллеги, я просто читал его код $user->{ctr-пробел}get{ctr-пробел}Name | Address | Email | Role etc... а не лазил в документацию, ища по массиву $user_data его ключи.
Иначе, вместо работы, мы будем раз в два дня собираться и рассказывать друг-другу, кто каких процедур настряпал и какая сруктура данных должна быть на входе и что они выдают на выходе.
// на php еще можно middleware писать.
оно будет исключительно json-ами плеваться
_____________
[продано копирайтерам]