Modelos en MVC en PHP

Ahora analicemos los modelos. Los modelos, al igual que los controladores, son clases de POO. Deben ubicarse en la carpeta /project/models/. Creemos en esta carpeta, en el archivo Page.php, el modelo Page responsable de los datos de las páginas de nuestro sitio:

/project/models/Page.php<?php
  namespace Project\Models;
  use \Core\Model;
  
  class Page extends Model
  {
    
  }
?>

Como puedes ver, nuestro modelo hereda de la clase \Core\Model. De esta clase, nuestro modelo hereda los métodos protegidos findOne y findMany. El método findOne recibe como parámetro una consulta SQL y devuelve el primer registro de la base de datos que coincide con el resultado de la consulta. El método findMany también recibe una consulta SQL, pero devuelve un array de registros.

Además, no necesitas escribir código que establezca la conexión con la base de datos, ni procesar los resultados de la consulta mediante mysqli_fetch_assoc. El framework lo hace por ti. Solo necesitas decidir si esperas un registro de la base de datos o varios y usar la función correspondiente, obteniendo como resultado un array manejable que puedes usar directamente más adelante.