Прадстаўленні ў MVC у PHP
Дадайм цяпер нашым дзеянням прадстаўленні.
Па правілах нашага фрэймворка прадстаўленні
захоўваюцца ў папцы /project/views/.
Акрамя таго, у нашым фрэймворку дзейнічае
пагадненне: імя файла з прадстаўленнем павінна
супадаць з імем дзеяння і размяшчацца
ў папцы з такой самой назвай, як імя кантролера.
Напрыклад, калі ў нас ёсць кантролер PageController,
то ўсе яго прадстаўленні слід захоўваць
ў папцы /project/views/page/. Сам
файл прадстаўлення павінен мець пашырэнне
.php. Дапусцім, калі ў кантролеры
PageController будзе дзеянне act,
то яго прадстаўленне слід размяшчаць у
/project/views/page/act.php.
Для таго, каб задаць прадстаўленне якому-небудзь
дзеянню, гэта дзеянне павінна выклікаць метад
render, перадаўшы яму параметрам імя
прадстаўлення. Імя прадстаўлення павінна складацца
з імя кантролера з маленькай літары, пасля
якой праз / будзе запісана імя
дзеяння.
Метад render не трэба рэалізоўваць
у кантролеры - ён наследуецца ад бацькоўскага
класа Core\Controller. Акрамя таго,
для карэктнай работы вынік работы метаду
след вярнуць праз return.
Такім чынам, хай у нас ёсць кантролер Page
з дзеяннем act. Давайце прывяжам
да гэтага дзеяння прадстаўленне:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act');
}
}
?>
Зробім цяпер файл з HTML кодам нашага прадстаўлення:
<div>
гэта прадстаўленне
дзеяння act кантролера page
</div>
Прайдзіце апісаныя маніпуляцыі, а затым звярніцеся да нашага дзеяння праз адрасную радок. Пераканайцеся, што ў браўзэры з'явіцца тэкст з створанага вамі прадстаўлення.