Modèles dans MVC en PHP
Comprendons maintenant les modèles. Les modèles,
tout comme les contrôleurs, sont des classes
POO. Ils doivent être placés dans le dossier
/project/models/. Créons dans ce dossier,
dans le fichier Page.php, le modèle Page
responsable des données des pages de notre site :
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
}
?>
Comme vous pouvez le voir, notre modèle hérite de la classe
\Core\Model. De cette classe, notre
modèle hérite des méthodes protégées findOne
et findMany. La méthode findOne prend en paramètre
une requête SQL et retourne le premier
enregistrement de la base de données correspondant au résultat de la requête.
La méthode findMany prend également une requête SQL
mais retourne un tableau d'enregistrements.
Et vous n'avez pas besoin d'écrire le code établissant
la connexion avec la base de données, ni de traiter les résultats
de la requête via mysqli_fetch_assoc.
Le framework le fait pour vous. Vous devez simplement
choisir si vous attendez de la requête un enregistrement
de la base de données ou plusieurs, et utiliser la fonction
appropriée, en obtenant comme résultat un tableau cohérent
que vous pouvez simplement utiliser
par la suite.