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

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

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

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

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

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

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

resources/views/test.blade.php<!DOCTYPE html>
<html>
  <head>
    <title>my view</title>
  </head>
  <body>
    variable one: {{ $var1 }}
    variable two: {{ $var2 }}
  </body>
</html>

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

blade<!DOCTYPE html>
<html>
  <head>
    <title>my view</title>
  </head>
  <body>
    variable one: 1
    variable two: 2
  </body>
</html>
Задание 1

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