გვერდის სათაური MVC-ში PHP-ში

ფაილში შაბლონი ასევე ხელმისაწვდომია ცვლადი $title, რომელიც შეიცავს გვერდის სათაურს. ცხადია, რომ ეს სათაურიც განსხვავებული იქნება სხვადასხვა გვერდისთვის. მოდით გამოვიყენოთ ეს ცვლადი დანიშნულებისამებრ:

/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' გახდეს გვერდის სათაური.