пытаюсь передать данные в представление laravel 5.1

здесь у меня есть следующее в моем контроллере

    $data = [];

    mt_srand((double)microtime()*15000);//optional for php 4.2.0 and up.
    $charid = strtoupper(md5(uniqid(rand(), true)));
    $uuid = substr($charid, 0, 8)
    .substr($charid, 8, 4)
    .substr($charid,12, 4)
    .substr($charid,16, 4)
    .substr($charid,20,12);

    $data['confirmation_link'] = $uuid;
    //dd($data);
    Mail::send('email.test', $data, function ($m) {
        $m->from('[email protected]', 'Your Application');
        $m->to('[email protected]')->subject('Your Reminder!');
    });

вот мой взгляд

<p>
  This is a test, an email test.
</p>
<p>
  The variable <code>$data['confirmation_link']</code> contains the value:
</p>
<ul>
  <li><strong>{{ $data['confirmation_link'] }}</strong></li>
</ul>
<hr>
<p>
  That is all.
</p>

но я получаю сообщение об ошибке

Undefined variable: data 

Я неправильно передаю данные в представление? Я передаю массив. Я все еще новичок в MVC-фреймворках и работаю с ООП.


person hello world    schedule 14.03.2016    source источник


Ответы (1)


вам не нужно обращаться к переменной, так как array index просто сделайте это в своем представлении

напишите это $confirmation_link вместо $data['confirmation_link']

The variable <code>$confirmation_link</code> contains the value:

означает прямой доступ к вашей переменной вместо доступа через индекс массива.

person Qazi    schedule 14.03.2016
comment
Благодарю за разъяснение. - person hello world; 14.03.2016