Controller in MVC in PHP
La prima cosa che analizzeremo sono i controller. I controller elaborano le richieste dell'utente, capiscono cosa l'utente voleva chiedere al sito, richiedono i dati corrispondenti dal modello e li inviano alla vista.
I controller sono classi OOP.
Un file - una classe e, di conseguenza,
un controller. Nel nostro framework i controller
saranno memorizzati nella cartella project/controllers.
Esercitiamoci a creare controller.
Per riscaldarci, creiamo la classe PageController,
che gestirà le pagine di testo
sul nostro sito.
Creiamo subito il file per il nostro controller.
Secondo le regole del nostro framework, ogni classe
deve essere memorizzata in un file con lo stesso nome
(compreso il caso). Quindi la nostra classe PageController
sarà memorizzata nel file PageController.php.
Crea questo file nella cartella project/controllers.
Creiamo la nostra classe in questo file:
<?php
namespace Project\Controllers;
use \Core\Controller;
class PageController extends Controller
{
}
?>
Come puoi vedere, la nostra classe appartiene allo spazio dei nomi
Project\Controllers, seguendo la convenzione
di caricamento automatico dei file (cioè il percorso delle cartelle
deve corrispondere allo spazio dei nomi).
Inoltre, la nostra classe eredita dalla classe
Core\Controller, situata nel core
del framework. Non c'è bisogno di cercare un significato profondo in questo,
ma semplicemente accettarlo come una regola
del framework. Ecco la regola: tutti i controller che
crei devono ereditare dalla
classe Core\Controller, affinché tutto
funzioni come dovrebbe.