MVC တွင် PHP ဖြင့် စာမျက်နှာ ခေါင်းစဉ်

တမ်းပလိတ်ဖိုင်ထဲတွင် စာမျက်နှာ ခေါင်းစဉ်ပါရှိသော $title ကိန်းရှင်လည်း ရရှိနိုင်ပါသည်။ ဤခေါင်းစဉ်သည်လည်း မတူညီသော စာမျက်နှာများအတွက် မတူညီမည်မှာ သိသာပါသည်။ ဤကိန်းရှင်ကို သင့်တော်စွာ အသုံးပြုကြပါစို့-

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

သီးခြား View တစ်ခုအတွက် ခေါင်းစဉ်သတ်မှတ်ရန် Controller ထဲတွင် ၎င်းကို title ဂုဏ်သတ္တိထဲသို့ ရေးထည့်ရန် လိုအပ်ပါသည်-

project/controllers/TestController.php<?php
  namespace Project\Controllers;
  use Core\Controller;
  
  class TestController extends Controller
  {
    public function act()
    {
      // ခေါင်းစဉ်သတ်မှတ်ပါမည်-
      $this->title = 'Test Controller ၏ act လုပ်ဆောင်ချက်';
      
      // အချက်အလက်အချို့ ပေးပို့လျက် View ကို Render လုပ်ပါမည်-
      return $this->render('test/act', [
        'var1' => 'eee',
        'var2' => 'bbb',
        'var3' => 'kkk',
      ]);
    }
  }
?>
Задание 1

တမ်းပလိတ်ဖိုင်နှင့် သင်၏ Controller အားလုံးကို တစ်ခုချင်းစီသော View များအတွက် သီးခြားခေါင်းစဉ်များ ထုတ်ပေးနိုင်ရန် ပြုပြင်မွမ်းမံပါ။

Задание 2

Page Controller ထဲတွင် အောက်ပါ Array ကို ပေးထားသည်ဆိုပါစို့-

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 လုပ်ဆောင်ချက်ကို ပြုလုပ်ပါ၊ ၎င်းသည် သတ်မှတ်ပေးထားသော စာမျက်နှာကို ပြသပေးပါလိမ့်မည်။ View ထဲတွင် 'text' key မှ စာသားကို အပိုဒ်တစ်ခုအတွင်း ထည့်သွင်းထားပါစေ၊ ၎င်းပြင် 'title' key မှ စာသားသည် စာမျက်နှာ ခေါင်းစဉ်ဖြစ်လာပါစေ။