MVC да PHP да саҳифа тайтили

Файл шаблонида шунингдек, саҳифа тайтилини ўз ичига олган $title ўзгарувчиси мавжуд. Маълумки, бу сарловҳа ҳам турли саҳифалар учун турлича бўлади. Келинг, бу ўзгарувчидан мақсадга мувофик fойдаланамиз:

/project/layouts/default.php<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title><?= $title ?></title>
  </head>
  <body>
    ...
  </body>
</html>

Маълум бир кўриниш учун тайтилни белгилаш учун контроллерда уни title хусусиятига ёзиш керак:

project/controllers/TestController.php<?php
  namespace Project\Controllers;
  use Core\Controller;
  
  class TestController extends Controller
  {
    public function act()
    {
      // Тайтлни белгилаймиз:
      $this->title = 'Test контроллерининг act амали';
      
      // Қандайдир маълумотларни ўтказган ҳолда, кўринишни рендер қиламиз:
      return $this->render('test/act', [
        'var1' => 'eee',
        'var2' => 'bbb',
        'var3' => 'kkk',
      ]);
    }
  }
?>
Задание 1

Файл шаблони ва барча контроллерингизни ўзгартиринг, шундай килиб, ҳар бир кўриниш учун ўз тайтили чиқарилсин.

Задание 2

Page контроллерида куйидаги массив берилган деб фараз қилайлик:

php<?php
  $this->pages = [
    1 => ['title'=>'page 1', 'text'=>'text 1'],
    2 => ['title'=>'page 2', 'text'=>'text 2'],
    3 => ['title'=>'page 3', 'text'=>'text 3'],
  ];
?>

show амалини яратинг, у берилган саҳифани чиқарсин. Кўринишда 'text' калитидан олинган матн абзац ичига олиниб, 'title' калитидан олинган матн эса саҳифа тайтилига айлансин.