php - 如何使用 Blade 动态生成 HTML

标签 php laravel laravel-blade

在 Laravel 5 和 Blade 中,我使用带有文本区域的表单将文本存储在 mysql 数据库中,然后将其显示回给用户。我希望能够保留回车。我尝试了使用 nl2br() 的简单方法 用
标签替换\r\n 的函数:

public function setBodyAttribute($data){

    $this->attributes['body'] = nl2br($data);

}

看来 Blade 不允许将 html 显示为 HTML。

{{ $example->body }}

解决这个问题的最佳方法是什么?

最佳答案

既然你提到了 Laravel 5,你正在寻找:

{!! $example->body !!}

在 Laravel 4 中,{{ $data }}会按原样回显数据,而 {{{ $data }}}通过 htmlentities 运行后会回显数据.

然而,Laravel 5 已经改变了它 {{ $data }}通过 htmlentities 运行后将回显数据, 和新语法 {!! $data !!}将按原样回显数据。

文档 here .

关于php - 如何使用 Blade 动态生成 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28687810/

相关文章:

php - Laravel Blade 在 foreach 中使用 if 条件

Laravel:使用 old() 处理未选中的复选框

php - 如何使用 php 脚本截断 mysql 表

php - 从 PHP INNER JOIN 表创建多维 JSON

javascript - Laravel 和 JQuery : Display mysql row data if ID is set

MySQL 服务器最大化内存,Galera 集群

php - 有没有一种简单的方法可以仅在 View Laravel 上更改时区?

php - Indeed API 搜索特定公司

php - 使用 PHP 删除域以外的所有内容

php - Laravel Auth - 使用 md5 而不是集成的 Hash::make()