나만의 MVC 프레임워크의 View 클래스
지금부터 데이터 표현을 담당할
View 클래스를 만들 것입니다.
이 클래스는 매개변수로
Page 클래스의 객체를 받고,
그 결과로 화면에 출력할 수 있는
완성된 HTML 페이지 코드를 반환할 것입니다.
View 클래스를 파일
index.php에서 어떻게 사용할지
살펴보겠습니다:
<?php
namespace Core;
error_reporting(E_ALL);
ini_set('display_errors', 'on');
spl_autoload_register(function($class) {
// 당신의 오토로드 구현
});
$routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
$track = ( new Router($routes) ) -> getTrack($_SERVER['REQUEST_URI']);
$page = ( new Dispatcher ) -> getPage($track);
echo (new View) -> render($page); // View 클래스를 이렇게 사용합니다
?>
View 클래스의 코드 구조는
다음과 같을 것입니다:
<?php
namespace Core;
class View
{
public function render(Page $page) {
return $this->renderLayout($page, $this->renderView($page));
}
private function renderLayout(Page $page, $content) {
}
private function renderView(Page $page) {
}
}
?>