Modeller i MVC i PHP
La oss nå se på modeller. Modeller
er, akkurat som kontrollere,
OOP-klasser. De bør plasseres i mappen
/project/models/. La oss i denne mappen
i filen Page.php lage modellen Page
som er ansvarlig for dataene til sidene på nettstedet vårt:
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
}
?>
Som du ser, arver modellen vår fra klassen
\Core\Model. Fra denne klassen arver
modellen vår de beskyttede metodene findOne
og findMany. Metoden findOne tar en SQL-spørring som parameter
og returnerer den første
posten fra databasen som ble funnet i spørringsresultatet.
Metoden findMany tar også en SQL-
spørring, men returnerer en matrise med poster.
Samtidig trenger du ikke å skrive kode som etablerer
tilkobling til databasen, eller behandle resultatene
fra spørringen via mysqli_fetch_assoc.
Rammeverket gjør dette for deg. Du trenger bare
å velge om du forventer én post fra databasen
eller flere fra spørringen og bruke den tilsvarende
funksjonen, og få et fornuftig matriseresultat
som du enkelt kan bruke videre.