0
사용자가 텍스트 템플릿을 설정하고 중괄호 안에 자리 표시자를 사용하여 동적으로 대체해야하는 시나리오가 있습니다.문자열 안에 프로세스 블레이드 템플릿
예를 들어, 사용자 입력과 같은 문자열이 될 수 :
$userinput = '<p> Hello {{$name}} <\p>';
$userinput = '<p> Hi {{$name}} <\p>';
내가 HTML이 올바르게 렌더링됩니다 뷰 message.blade.php
@section('content')
{!! $userinput !!}
@stop
에서 확장 된 자리에이 입력을 표시 할 만하지만, 물론 {{$ name}}은 'Alice'로 대체되지 않습니다.
view('message')->with([
'userinput' => $userinput,
'name' => 'Alice',]);
내부 자리 표시자를 처리하는 간단한 방법이 있습니까? 블레이드 파일을 다시 해석 할 수 있습니까?
추신 : 나는 이스케이프 처리되지 않은 사용자 입력이 악하다고 알고 있습니다.
시도해 봤어?() ?? 당신이 이름에 대한 값을 받았다고 확인 했습니까 ?? 또한 {{$ var}} 대신 {!! $ var !!} – RohitS
'$ userinput = '
Hello'. $ name. '
';'그렇지 않습니까? 'Controller'에서'$ userinput'을 정의한다면,'blade' 약식을 사용할 필요가 없습니다. –php 블록 안에 있다면 어쨌든 블레이드 구문을 사용해서는 안됩니다. –