Разделяне на код и шаблон, MVC


Какво е MVC? В превод от английски това означава „Model-View-Controller“. На първо място, за по-голяма яснота ще дам илюстрация на концепцията MVC и илюстрация на файловата йерархия при използване на тази технология:

Йерархия на MVC Concept File при използване на MVC

За опростяване, в следващото, файловете ще бъдат извикани както следва:

  • index.php - Контролер;
  • model.php - Модел;
  • shablon.html - Преглед.

Всички шаблони (дизайни) на нашата страница се съхраняват в папката/tpl. В папката/img - всички използвани изображения.

В общия и най-простия случай тази архитектура се състои от три файла, всеки от които отговаря за конкретна буква в абревиатурата на MVC. Основният файл е файлът, намиращ се в корена - index.php. Този файл ще се стартира автоматично, ако потребителят влезе в основната директория. Файлът index.php е контролерът, отговорен за обработката на потребителски действия, като щракване върху бутони върху формуляри, извикване на различни функции и свързване на шаблон. Обикновено този файл е малък и съдържа само извиквания на функции. Всички потребителски функции се поставят във файла model.php. Този файл е колекция от тези функции - библиотека. Там не се съдържа нищо освен тях.

За да използвате функциите от model.php, в началото на кода на файла index.php се вмъква ред, който включва тази библиотека:

След това всички написани от вас функции ще станат достъпни за скрипта. Съгласете се, много по-удобно е да съхранявате всички функции в отделен файл, който просто е свързан с основната програма в точното време. Редактирането на такава програма става много лесно. Например, с разширяването на функционалността на вашия сайт, просто добавяте нова функция в края на файла model.php и от този момент тя ще бъде достъпна в основната програма.