Php Laravel 5回显会话变量,刀片中包含html
我在laravel做了一个重定向:Php Laravel 5回显会话变量,刀片中包含html,php,laravel,laravel-5,blade,Php,Laravel,Laravel 5,Blade,我在laravel做了一个重定向: return redirect('admin')->with($returnData); $returnData是一个字符串,它包含一个引导信息div以及来自控制器的结果。几乎所有东西都在工作,除了当页面再次加载时,它在页面上显示html,就好像它是文本、括号和所有东西一样。如果我使用这个: @if(!empty(Session::get('error'))) {{ Session::get('error')}} @endif 然后它显示为纯文本。如
return redirect('admin')->with($returnData);
$returnData是一个字符串,它包含一个引导信息div以及来自控制器的结果。几乎所有东西都在工作,除了当页面再次加载时,它在页面上显示html,就好像它是文本、括号和所有东西一样。如果我使用这个:
@if(!empty(Session::get('error'))) {{ Session::get('error')}} @endif
然后它显示为纯文本。如果我把它改成
<?php if(!empty(Session::get('error'))) { echo Session::get('error'); } ?>
它很好用。我可以这样保存它,但我更愿意使用Blade/Laravel作为它的预期用途,所以我想知道是否有办法让@if语句显示呈现的html而不是文本版本?要显示呈现的html,您应该在视图中使用
{!!$variable->coontent!!}
,这会将HTML文本转换为渲染尝试将blade代码更改为以下内容
@if(!empty(Session::get('error')))
{!! Session::get('error') !!}
@endif
我建议只返回错误消息,然后在视图中创建div。因此,如果要更改视图的布局,可以在一个位置创建它
@if(Session::has('error'))
<div class="alert alert-danger">
{{ Session::get('error')}}
</div>
@endif
@if(Session::has('error'))
{{Session::get('error')}
@恩迪夫
希望这有帮助 希望这个例子能对你有所帮助。 试试这个
@if (session('Error'))
<div class="alert alert-success">
{{ session('Error') }}
</div>
@endif
@if(会话('Error'))
{{session('Error')}
@恩迪夫
如果要显示错误中的纯文本,而不显示任何HTML实体,只需使用:
{{ Session::get('error') }}
或
如果变量中有HTML实体,请使用:
{!! Session::get('error') !!}
不是答案,但您应该使用
{{!![PHP代码在此运行]!!}
来执行代码。刀片模板让您可以自由地使用比使用PHP标记更干净的语法。
{!! Session::get('error') !!}