Передача данных в представление Laravel

Давайте теперь будем передавать какие-нибудь данные из контроллера в представление.

Для этого предназначен второй параметр функции view. В этот параметр мы можем передать ассоциативный массив. В представлении все ключи этого массива станут переменными, а элементы - значениями этих переменных.

Давайте посмотрим на примере. Передадим в представление какой-нибудь массив с данными:

<?php class PostController extends Controller { public function show() { return view('test', ['var1' => '1', 'var2' => '2']); } } ?>

В результате в представлении будет доступна переменная $var1 со значением 1 и переменная $var2 со значением 2.

Для того, чтобы вывести содержимое переменной в представлении, нужно написать ее в двойных фигурных скобках. Сделаем это:

<!DOCTYPE html> <html> <head> <title>my view</title> </head> <body> variable one: {{ $var1 }} variable two: {{ $var2 }} </body> </html>

Шаблонизатор Blade вместо соответствующих команд подставит значения переменных и в браузер отправится следующий HTML код:

<!DOCTYPE html> <html> <head> <title>my view</title> </head> <body> variable one: 1 variable two: 2 </body> </html>

Пусть в действии контроллера даны переменные $name и $surname. Передайте значения этих переменных в представление и выведите содержимое каждой из этих переменных на экран.