Modellen in MVC in PHP
Laten we nu de modellen bekijken. Modellen
zijn, net als controllers, OOP-klassen.
Ze moeten worden geplaatst in de map
/project/models/. Laten we in deze map
in het bestand Page.php het model Page maken
dat verantwoordelijk is voor de gegevens van de pagina's van onze site:
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
}
?>
Zoals je ziet, erft ons model over van de klasse
\Core\Model. Van deze klasse erft ons
model de beschermde methoden findOne
en findMany. De methode findOne accepteert als parameter
een SQL-query en retourneert het eerste
record uit de database dat in het queryresultaat valt.
De methode findMany accepteert ook een SQL
query, maar retourneert een array met records.
Hierdoor hoef je geen code te schrijven die
verbinding maakt met de database, of de resultaten
van de query te verwerken via mysqli_fetch_assoc.
Het framework doet dit voor je. Je hoeft alleen maar
te kiezen of je van de query één record verwacht
uit de database of meerdere, en de bijbehorende
functie te gebruiken, waarbij je een begrijpelijke array krijgt
die je eenvoudigweg kunt gebruiken voor
verder gebruik.