PHP에서 MVC 모델 작업 실습
데이터베이스에 레코드가 있는 <page> 테이블이 있다고 가정해 봅시다.
두 개의 메서드가 있는 <Page> 모델을 만들어 보겠습니다. 첫 번째 메서드는
<id>로 단일 레코드를 가져오고, 두 번째 메서드는 <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");
}
}
?>
이제 컨트롤러에서 우리 모델을 사용해 봅시다:
<?php
namespace Project\Controllers;
use \Core\Controller;
use \Project\Models\Page; // 우리의 모델을 연결합니다
class PageController extends Controller
{
public function test() {
$page = new Page; // 모델 객체를 생성합니다
$data = $page->getById(3); // id=3인 레코드를 가져옵니다
var_dump($data);
$data = $page->getById(5); // id=5인 레코드를 가져옵니다
var_dump($data);
$data = $page->getByRange(2, 5); // id가 2부터 5까지인 레코드들
var_dump($data);
}
}
?>
데이터베이스에 <page> 테이블을 만들고 데이터를 채우세요.
이론에서 설명한 코드의 동작을 확인하세요.