PHP-däki MVC-de kontrolerlar
Ilki bilen barlagymyz - kontrolerlar. Kontrolerlar ulanyjynyň haýyşyny işleýärler, ulanyjynyň saýtdan näme sorap biljekdigini düşünýärler, modelden degişli maglumatlary sorap alýarlar we olary görkezme üpjünçiligine iberýärler.
Kontrolerlar OOP klaslary hökmünde çykyş edýär.
Bir faýl - bir klas we, şonuň ýaly bir kontroler.
Bizim freýmworkimizde kontrolerlar
project/controllers bujuklarynda saklanylar.
Geliň kontroler döretmekde synanyşyk edeliň.
Islendik üçin PageController atly klas döreýäris,
ol bizim saýdaky teksti sahypalary dolandyryp biler.
Geliň derrew öz kontrolerimiz üçin faýl döreýälim.
Bizim freýmworkimiziň düzgünlerine görä her bir klas
öz ady bilen birmeňzeş atly faýlda saklanmaly
(ýazuw usulyna çenli). Ýagny bizim PageController klasymyz
PageController.php faýlynda saklanylar.
Bu faýly project/controllers bujukynda dörediň.
Bu faýlda bizim klasymyzy edeliň:
<?php
namespace Project\Controllers;
use \Core\Controller;
class PageController extends Controller
{
}
?>
Görşüňiz ýaly, bizim klasymyz atlar meýdanyna degişli
Project\Controllers, faýllary awtomatik ýüklemegiň ylalaşygyna eýerýär
(ýagny bujuklardan ýol atlar meýdany bilen gabat gelmeli).
Şeýle hem, bizim klasymyz klasdan miras alýar
Core\Controller, freýmworkiň çekirdeginde ýerleşýän.
Muny çuňňur manyda gözlemek hökman däl,
ýöne freýmworkiň düzgüni hökmünde kabul etmeli.
Bu düzgün: döredýän ähli kontrolerleriňiz
klasdan miras almaly Core\Controller, şonuň üçin hemmesi
gerek ýaly işlesin.