Представљања у 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>
Проведите описанe манипулације, а затим обратите се нашој акцији преко адресне линије. Уверите се да ће се у прегледачу појавити текст из представљања које сте креирали.