Modeller i MVC i PHP
Lad os nu se på modeller. Modeller
ligesom controllere er
OOP-klasser. De skal placeres i mappen
/project/models/. Lad os i denne mappe
i filen Page.php lave modellen Page
der er ansvarlig for data for vores hjemmesides sider:
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
}
?>
Som du kan se, arver vores model fra klassen
\Core\Model. Fra denne klasse arver vores
model de beskyttede metoder findOne
og findMany. Metoden findOne tager en SQL-forespørgsel som parameter
og returnerer den første
post fra databasen, der falder ind under forespørgselsresultatet.
Metoden findMany tager også en SQL-
forespørgsel, men returnerer en række poster.
Samtidig behøver du ikke skrive kode, der etablerer
forbindelse til databasen, eller behandle resultaterne
fra forespørgslen via mysqli_fetch_assoc.
Frameworket gør dette for dig. Du skal bare
vælge, om du forventer én post fra databasen
eller flere fra forespørgslen og bruge den tilsvarende
funktion, så du får et fornuftigt array som resultat,
som du bare kan tage og bruge
videre.