У меня есть это:Как вызвать переменную в {!! !!} в Laravel 5.1?
<title>{!!Config::get('lang_en.title')!!}</title>
Я хочу сделать somethnig так:
<title>{!!Config::get('lang_{{$language}}.title')!!}</title>
Возможно ли это?
У меня есть это:Как вызвать переменную в {!! !!} в Laravel 5.1?
<title>{!!Config::get('lang_en.title')!!}</title>
Я хочу сделать somethnig так:
<title>{!!Config::get('lang_{{$language}}.title')!!}</title>
Возможно ли это?
Я думаю, общая вещь, которую вы должны понять, что что-то внутри {!!
!!}
нормально PHP, не клинка шаблонного ,
Таким образом, вы бы сцепить переменные так же, как вы бы в PHP, так как ваш принят ответ показывает:
'lang_' . $language . '.title'
В основном {!!
X !!}
конвертируется в <?php echo
X ; ?>
И {{
X }}
преобразуется до <?php echo htmlentities(
X ); ?>
{{ }}
безопаснее и всегда следует использовать, если строка содержит пользовательский ввод. {!! !!}
следует использовать, если строка содержит HTML. Что, если это смесь обоих?
Затем вы должны использовать {!! !!}
, чтобы он работал, но обертывает пользовательский ввод функцией e()
, например.
// In the controller
$string = '<span>' . e($username) . '</span>';
// In the view
{!! $string !!}
e()
просто Laravel стенография для htmlentities()
.
Спасибо за этот ответ. Таким образом, это означает, что ** {{X}} ** более безопасен для использования, чем ** {!! ИКС !!}** ? –
@ ЯсенИванов. Добро пожаловать. Да, это правильно. Но, конечно, вы не можете поместить HTML внутри {{}}. Я обновил ответ, чтобы показать, что вы можете сделать в этом случае – andrewtweber
попробовать этот
{!!Config::get('lang_' . $language . '.title')!!}
, удалив фигурные скобки и добавить значение в виде строки
не работает ни –
@ YasenIvanov {!! Конфигурация: : get ('lang_en.title') !!} работает ли он? –
проверьте, что написано в преобразованном файле php. – mimo
Попробуйте Php echo Config :: get ('lang _'. $ Language. '. Title');?> –
это не сработало .. –