Τίτλος σελίδας στο MVC σε PHP

Στο αρχείο προτύπου είναι επίσης διαθέσιμη η μεταβλητή $title, που περιέχει τον τίτλο της σελίδας. Προφανώς, αυτός ο τίτλος θα είναι επίσης διαφορετικός για διάφορες σελίδες. Ας χρησιμοποιήσουμε αυτή τη μεταβλητή για τον σκοπό της:

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

Για να ορίσετε τον τίτλο για ένα συγκεκριμένο προβολή είναι απαραίτητο στον controller να τον γράψετε στην ιδιότητα title:

project/controllers/TestController.php<?php
  namespace Project\Controllers;
  use Core\Controller;
  
  class TestController extends Controller
  {
    public function act()
    {
      // Θέτουμε τον τίτλο:
      $this->title = 'Δράση act του controller test';
      
      // Θα κάνουμε render την προβολή, περνώντας κάποια δεδομένα:
      return $this->render('test/act', [
        'var1' => 'eee',
        'var2' => 'bbb',
        'var3' => 'kkk',
      ]);
    }
  }
?>
Задание 1

Τροποποιήστε το αρχείο προτύπου και όλους τους controllers σας έτσι ώστε για κάθε προβολή να εμφανίζεται ο δικός της τίτλος.

Задание 2

Έστω στον controller 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' να γίνεται ο τίτλος της σελίδας.