PHP'de MVC'de Modellerle Çalışma Pratiği
Veritabanınızda bir <page> tablosu ve bazı kayıtlar olduğunu varsayalım.
İki metodu olan bir <Page> modeli oluşturalım. İlk metod,
<id>'sine göre bir kayıt alacak, ikinci metod ise
<id> aralığındaki kayıt dizisini alacak:
<?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");
}
}
?>
Şimdi modelimizle bir denetleyicide çalışalım:
<?php
namespace Project\Controllers;
use \Core\Controller;
use \Project\Models\Page; // modelimizi bağlıyoruz
class PageController extends Controller
{
public function test() {
$page = new Page; // model nesnesi oluşturuyoruz
$data = $page->getById(3); // id=3 olan kaydı alır
var_dump($data);
$data = $page->getById(5); // id=5 olan kaydı alır
var_dump($data);
$data = $page->getByRange(2, 5); // id'si 2 ile 5 arasındaki kayıtlar
var_dump($data);
}
}
?>
Veritabanınızda <page> tablosu oluşturun,
verilerle doldurun. Teoride açıklanan kodun çalışmasını test edin.