Передача данных в представление в MVC в PHP
С помощью второго параметра метода render
можно передавать данные из контроллера в
представление. Данные следует передавать
в виде ассоциативного массива. При этом в
представлении ключи этого массива станут
переменными с соответствующими значениями.
Давайте посмотрим на практике. Передадим в наше представление массив с тремя элементами:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act', [
'var1' => 'eee',
'var2' => 'bbb',
'var3' => 'kkk',
]);
}
}
?>
Как вы видите, ключи нашего массива - 'var1',
'var2' и 'var3'. Это значит,
что в представлении будут доступны такие
переменные и мы можем вывести их значения
в нужных местах HTML кода. Сделаем это:
<div>
это представление
действия act контроллера test
</div>
<ul>
<li><?php echo $var1; ?></li>
<li><?php echo $var2; ?></li>
<li><?php echo $var3; ?></li>
</ul>
Проделайте описанные манипуляции, а затем обратитесь к нашему действию через адресную строку. Убедитесь, что в браузере появится текст из созданного вами представления.