Кантролеры ў MVC ў PHP
Першае, з чым мы разбярэмся - гэта кантролеры. Кантролеры апрацоўваюць запыты карыстача, разумеюць, што хацеў папрасіць карыстач у сайта, просяць адпаведныя дадзеныя з мадэлі і адпраўляюць іх у прадстаўленне.
Кантролеры прадстаўляюць сабой ААП класы.
Адзін файл - гэта адзін клас і, адпаведна,
адзін кантролер. У нашым фрэймворку кантролеры
будуць захоўвацца ў папцы project/controllers.
Давайце патрэніруемся ў стварэнні кантролераў.
Для размінкі зробім клас PageController,
які будзе кіраваць тэкставымі старонкамі
на нашым сайце.
Давайце адразу створым файл для нашага кантролера.
Па правілах нашага фрэймворку кожны клас
павінен захоўвацца ў файле з аднайменнай назвай
(да рэгістра). Гэта значыць наш клас PageController
будзе захоўвацца ў файле PageController.php.
Стварыце гэты файл у папцы project/controllers.
Зробім у гэтым файле наш клас:
<?php
namespace Project\Controllers;
use \Core\Controller;
class PageController extends Controller
{
}
?>
Як вы бачыце, наш клас належыць прасторы
імён Project\Controllers, следуя пагадненню
аб аўтазагрузцы файлаў (гэта значыць шлях па тэчках
павінен супадаць з прасторай імён).
Акрамя таго, наш клас наследуецца ад класа
Core\Controller, які знаходзіцца ў ядры
фрэймворку. У гэтым не трэба шукаць глыбокі
сэнс, а проста трэба прыняць як правіла
фрэймворку. Вось гэта правіла: усе ствараемыя
вамі кантролеры павінны наследавацца ад
класа Core\Controller, каб усе
працавала, як трэба.