2016-11-16 4 views
2

Я хочу отобразить представление и передать ему параметры.Отображение вида с заголовком

Вот весь код:

router.php:

class Router { 

    public function __construct() { 
     if(!$this->urlController) { 
      require dirname(__DIR__).'/config/View.php'; 
      $viewClass = new View(); 
      $viewClass->render('index', 'This is just the title of the page.'); 
     } 
    } 
} 

Как я могу сделать View класс, который отображает страницу «индекс» и где я могу установить название страницы или передать параметры с помощью $viewClass->render('index', 'This is just the title of the page.');?

+0

Я знаю, ваш маршрутизатор действительно не должен нести ответственность за создание шаблонов (даже если вы хотите притвориться, что этот шаблон является «представлением»). –

ответ

0

У меня есть. вот мой ответ:

класса Router {

public function __construct() { 
     if(!$this->urlController) { 
      require dirname(__DIR__).'/config/View.php'; 
      $viewClass = new View(); 
      $viewClass->setTitleForPage('Title of Page'); 
      $viewClass->render('index', 'This is just the title of the page.'); 
     } 
    } 
} 

затем просто передать переменную, которую вы получили от setTitleForPage к render функции в View классе, а затем вы можете сделать что-то вроде этого: require '/view/YourPage.php' и ГЭТ переменной на странице, вы можете сделать это: $this->pageTitle. Удачи!