尊重Laravel刀片中的换行符

时间:2018-06-06 07:38:44

标签: php laravel laravel-blade

我怀疑使用不同的方法尝试自己解决,但没有人给我预期的结果。

当我在项目的数据库中保存文本类型的变量时出现问题。它使用换行符保存它,事实上当我尝试从我的一个视图中编辑它时,它会尊重这些跳转。当我想在blade.php视图中显示它时,问题出现了,其中所有文本都没有任何换行符。

我使用了nl2br ()str_replace之类的不同功能,他们所做的只是将/ n更改为br标记以换行,而不是应用这些换行符,将它们写在文本旁边的屏幕。

我不知道是否应该在服务器上执行对变量的更改或修改并将其发送到视图,而不是在视图{{nl2br ($ user-> proffile)}}str_replace中执行。

首先原谅英语,并提前感谢您的帮助

4 个答案:

答案 0 :(得分:3)

只需{!! nl2br($user->proffile) !!}

{!! !!} 而不是 {{ }}

我在 laravel 8blade 中进行了测试,效果很好。

答案 1 :(得分:2)

您可以先使用e()进行转义,然后应用nl2br()

{{ nl2br(e($user->proffile)) }}

e()是Blade在编译三重括号时使用的函数

对于 Laravel 5 ,请使用:{!! nl2br(e($user->proffile)) !!}

答案 2 :(得分:0)

请检查profile {{ nl2br(e($user->proffile)) }}的SPELLING。有时人们会犯小错误。请在您的模型中验证。

答案 3 :(得分:0)

在laravel 5中,您可以使用{!! nl2br(e($ user-> proffile))!!},但这将在浏览器中显示html。 这样做不会显示HTML {!! nl2br($ user-> proffile)!!} 我上次使用它是在laravel 5.6中