2016-09-23 4 views
0

Я хочу спросить, если это возможно, чтобы сделать что-то подобное в View в Laravel 5.2:Laravel: переменный параметр + ввиду

<p> This is window: {{$element_ + 'window'}} </p> <p> This is wall: {{$element_ + 'wall'}} </p>

Значения этих переменных от $ element_window, $ element_wall ,

+1

Amm ... [Но почему] (http://www.reactiongifs.com/r/but-why.gif)? –

ответ

0

Если вы хотите динамически назвать переменную, вы можете сделать следующее.

<p> This is window: {{ ${'element_'.'window'} }} </p> 
<p> This is wall: {{ ${'element_'.'wall'} }} </p> 

Это должно сработать.

Но если вы просто хотите объединить строку с переменной ... вы можете использовать «.». :-)

+0

Это не динамический. Он по-прежнему статичен. –

+0

@RAVI. Дело в том, что вы можете использовать это внутри цикла. Вот почему он может быть динамическим. – victor

+0

Ничего общего с циклом. проверьте ответ KidBinary. –

1

Есть несколько вариантов.

Первый - это использование @php блок в .blade файл для динамического выхода:

@php 
${'window'} = ${$element_.'window'} 
@endphp 

Во-вторых, чтобы написать пользовательский лезвие расширения для вывода, что Вам необходимо.

В-третьих, для определения пользовательского метода в вашем Model (если вы его используете).

Однако я должен упомянуть, что такое назначение переменных внутри шаблона (первый вариант) не рекомендуется. Это вряд ли читаемо и может вызвать Exceptions, если такие динамически созданные переменные не существуют в какой-то момент. Не говоря, что это не логика представления.

Смежные вопросы