在Laravel 5和Blade中,我使用带有textarea的表单将文本存储在mysql数据库中,然后将其显示给用户。我希望能够保留回车。我尝试了使用nl2br()的简单方法
将\ r \ n替换为
标签的功能:
public function setBodyAttribute($data){
$this->attributes['body'] = nl2br($data);
}
Blade似乎不允许html显示为HTML。
{{ $example->body }}
解决这个问题的最佳方法是什么?
答案 0 :(得分:6)
既然您提到了Laravel 5,那么您正在寻找:
{!! $example->body !!}
在Laravel 4中,{{ $data }}
会按原样回显数据,而{{{ $data }}}
会在通过htmlentities
运行后回显数据。
但是,Laravel 5已对其进行了更改,以便{{ $data }}
在通过htmlentities
运行数据后对其进行回显,新语法{!! $data !!}
将按原样回显数据。
文档here。