Werk met roetes in jou eie MVC-raamwerk
Jy weet reeds dat in die lêer /project/config/routes.php
roetes geplaas word, wat ooreenstemmings aandui
tussen URL's en beheerders met aksies. Roetes
word voorgestel as voorwerpe van die klas Route.
Kom ons maak hierdie klas in die lêer
/core/Route.php:
<?php
namespace Core;
class Route
{
private $path;
private $controller;
private $action;
public function __construct($path, $controller, $action)
{
$this->path = $path;
$this->controller = $controller;
$this->action = $action;
}
public function __get($property)
{
return $this->$property;
}
}
?>
Soos jy kan sien, is eienskappe in hierdie klas slegs bedoel vir lees, wat bereik word deur die gebruik van magie.
Kyk nou in die lêer met roetes. Jy kan
sien dat daar 'n skikking is wat
teruggegee word deur return.
Dit beteken dat as jy so 'n lêer deur require insluit,
dan kan die resultaat van die insluiting in 'n
veranderlike geskryf word en in hierdie veranderlike sal ons
skikking wees:
<?php
namespace Core;
error_reporting(E_ALL);
ini_set('display_errors', 'on');
spl_autoload_register(function($class) {
// jou implementering van outolading
});
// Lees die skikking uit die lêer met roetes in die veranderlike:
$routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
?>
Kopieer die kode van my klas Route
en plaas dit in die lêer
/core/Route.php.
Kry die skikking met roetes in die lêer index.php.