Контролери у 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, да би све
радило онако како треба.