PHP에서 MVC 모델 작업 실습

데이터베이스에 레코드가 있는 <page> 테이블이 있다고 가정해 봅시다. 두 개의 메서드가 있는 <Page> 모델을 만들어 보겠습니다. 첫 번째 메서드는 <id>로 단일 레코드를 가져오고, 두 번째 메서드는 <id> 범위에서 레코드 배열을 가져옵니다:

/project/models/Page.php<?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");
    }
  }
?>

이제 컨트롤러에서 우리 모델을 사용해 봅시다:

project/controllers/PageController.php<?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);
    }
  }
?>
Задание 1

데이터베이스에 <page> 테이블을 만들고 데이터를 채우세요. 이론에서 설명한 코드의 동작을 확인하세요.