Paparan dalam MVC dalam PHP

Sekarang mari kita tambahkan paparan kepada tindakan kita. Mengikut peraturan kerangka kerja kami, paparan disimpan dalam folder /project/views/.

Selain itu, dalam kerangka kerja kami, terdapat perjanjian: nama fail paparan mesti sama dengan nama tindakan dan diletakkan dalam folder dengan nama yang sama seperti nama pengawal. Contohnya, jika kita mempunyai pengawal PageController, maka semua paparannya harus disimpan dalam folder /project/views/page/. Fail paparan itu sendiri mesti mempunyai sambungan .php. Sebagai contoh, jika dalam pengawal PageController terdapat tindakan act, maka paparannya harus diletakkan dalam /project/views/page/act.php.

Untuk menetapkan paparan kepada mana-mana tindakan, tindakan itu mesti memanggil kaedah render, dan menyampaikan nama paparan sebagai parameternya. Nama paparan mesti terdiri daripada nama pengawal dengan huruf kecil, selepas itu melalui / akan ditulis nama tindakan.

Kaedah render tidak perlu dilaksanakan dalam pengawal - ia diwarisi dari kelas induk Core\Controller. Selain itu, untuk berfungsi dengan betul, hasil kerja kaedah perlu dikembalikan melalui return.

Jadi, katakan kita mempunyai pengawal Page dengan tindakan act. Mari kita kaitkan paparan dengan tindakan ini:

project/controllers/PageController.php<?php
  namespace Project\Controllers;
  use Core\Controller;
  
  class PageController extends Controller
  {
    public function act()
    {
      return $this->render('page/act');
    }
  }
?>

Sekarang mari kita buat fail dengan kod HTML paparan kami:

/project/views/page/act.php<div>
  ini adalah paparan
  tindakan act pengawal page
</div>
Задание 1

Lakukan manipulasi yang diterangkan, dan kemudian akses tindakan kami melalui bar alamat. Pastikan teks dari paparan yang anda buat muncul dalam pelayar.