Модель MVC в PHP
Хочется написать свой движок, ради обучения, забавы и просто покопаться, вот и буду писать тут серию постов о том как я разбирался с написанием движка сайта на PHP. Полазив в инете стало ясно, что сейчас самое рульное в программировании сайтов это MVC…
Сначала выясним что такое MVC например в вики.
В общем MVC это некая универсальная заморочка для программирования, удобная и не очень одновременно. В PHP объектно-ориентированное программирование раскрывается во всей красе..
Смотрим на картинку и познаем дао.
Напишу как я это понимаю, если хотите возражайте…
Модель MVC в PHP:
Модель-Вид-Контроллер…Все просто, программа состоит из трех частей, каждая часть независима друг от друга, поэтому их можно редактировать каждую отдельно и при этом не нужно корректировать другие части.
Вид - это часть программы (модулей, блоков, классов)которая отвечает за вывод инфы на экран.. это может быть шаблонизатор, или функция с выводом типа <?php echo “Привет мир”; ?>, так же тут находятся все инструменты взаимодействия с пользователем…всякие там формы, кнопки, менюшки…передается все в основном через GET или POST.
Контроллер – это часть программы (модулей, блоков, классов) который в общем то управляет всем сайтом. Обрабатывает полученные данные от пользователя, делает проверку запросов,что-то там переваривает, что-то там химичит и, если нужно, обращается к блоку “Модель” из которой берет нужные данные и передает эти данные обратно блоку “Вид”, который в свою очередь выдает пользователю в удобночитаемом виде или в том виде который Вы заложили в блоке “Вид”.
Модель — это часть программы (модулей, блоков, классов) которая содержит все операции с данными, обычно это работа с базой данных типа mySQL. Блок принимает набор параметров от блока “Контроллер” в зависимости от этого формирует запрос и выдает некий массив с данными, его принимает контроллер может чет еще похимичит с этими данными и выдает этот массив блоку “Вид”. Можно правда еще поставить стрелку от “Модели” к “Виду” сразу, но не будем заморачиваться…пусть будет проще.
Вот таков первый пост по теме… все просто и весело как секс с маракасами….
P.S. чуть не забыл пояснить что за циферки на картинке:
(1) – это запросы POST, GET;
(2) – это массив с данными, готовый для переваривания блоком “Вид”;
(3) – это запрос (набор параметров для класса) на получение нужных данных из блока “Модель”;
(4) – массив данных, который выдается через “Контроллер” “Виду” сразу или что-то еще изменив.

