Thực hành làm việc với Model trong MVC trong PHP
Giả sử trong cơ sở dữ liệu của bạn có bảng page
với một số bản ghi nào đó. Hãy tạo một model
Page với hai phương thức. Phương thức đầu tiên
sẽ lấy một bản ghi theo id của nó,
còn phương thức thứ hai - lấy mảng các bản ghi
từ khoảng 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");
}
}
?>
Bây giờ hãy làm việc với model của chúng ta trong controller:
<?php
namespace Project\Controllers;
use \Core\Controller;
use \Project\Models\Page; // kết nối model của chúng ta
class PageController extends Controller
{
public function test() {
$page = new Page; // tạo đối tượng model
$data = $page->getById(3); // lấy bản ghi có id=3
var_dump($data);
$data = $page->getById(5); // lấy bản ghi có id=5
var_dump($data);
$data = $page->getByRange(2, 5); // các bản ghi có id từ 2 đến 5
var_dump($data);
}
}
?>
Hãy tạo bảng page trong cơ sở dữ liệu của bạn,
điền dữ liệu vào nó. Kiểm tra hoạt động của mã
được mô tả trong phần lý thuyết.