Contrôleurs dans MVC en PHP
La première chose que nous allons comprendre - ce sont les contrôleurs. Les contrôleurs traitent les requêtes de l'utilisateur, comprennent ce que l'utilisateur voulait demander au site, demandent les données correspondantes du modèle et les envoient à la vue.
Les contrôleurs sont des classes POO.
Un fichier - c'est une classe et, par conséquent,
un contrôleur. Dans notre framework, les contrôleurs
seront stockés dans le dossier project/controllers.
Entraînons-nous à créer des contrôleurs.
Pour nous échauffer, créons la classe PageController,
qui gérera les pages textuelles
sur notre site.
Créons immédiatement le fichier pour notre contrôleur.
Selon les règles de notre framework, chaque classe
doit être stockée dans un fichier du même nom
(y compris la casse). C'est-à-dire que notre classe PageController
sera stockée dans le fichier PageController.php.
Créez ce fichier dans le dossier project/controllers.
Créons notre classe dans ce fichier :
<?php
namespace Project\Controllers;
use \Core\Controller;
class PageController extends Controller
{
}
?>
Comme vous le voyez, notre classe appartient à l'espace de noms
Project\Controllers, suivant la convention
de chargement automatique des fichiers (c'est-à-dire que le chemin des dossiers
doit correspondre à l'espace de noms).
De plus, notre classe hérite de la classe
Core\Controller, située dans le noyau
du framework. Il ne faut pas y chercher un sens
profond, mais simplement l'accepter comme une règle
du framework. Voici cette règle : tous les contrôleurs que vous
créez doivent hériter de la
classe Core\Controller, pour que tout
fonctionne comme il se doit.