Prática de trabalho com modelos no MVC em PHP
Suponha que você tenha uma tabela chamada page em seu banco de dados
com alguns registros. Vamos criar um modelo
Page com dois métodos. O primeiro
método obterá um registro pelo seu id,
e o segundo método obterá um array de registros
de um intervalo de id:
<?php
namespace Project\Models;
use \Core\Model;
class Page extends Model
{
public function getById($id)
{
return $this->findOne("SELECT * FROM page WHERE id=$id");
}
public function getByRange($from, $to)
{
return $this->findMany("SELECT * FROM page WHERE id>=$from AND id<=$to");
}
}
?>
Agora vamos trabalhar com nosso modelo no controlador:
<?php
namespace Project\Controllers;
use \Core\Controller;
use \Project\Models\Page; // conectamos nosso modelo
class PageController extends Controller
{
public function test() {
$page = new Page; // criamos o objeto do modelo
$data = $page->getById(3); // obterá o registro com id=3
var_dump($data);
$data = $page->getById(5); // obterá o registro com id=5
var_dump($data);
$data = $page->getByRange(2, 5); // registros com id de 2 a 5
var_dump($data);
}
}
?>
Crie a tabela page em seu banco de dados,
preencha-a com dados. Verifique o funcionamento do código
descrito na teoria.