在 table、<br /> 标签中显示在屏幕上而不是换行

In table, <br /> tags displaying on the screen rathen than new line

我有一个 <table> 和里面的 <td> 标签,我在其中显示从后端检索到的数据。在将数据保存到数据库之前,我用它来将 \n\r 转换为 <br /> 标签:

$data = nl2br($request->data);
$data = str_replace(array("\r\n", "\n\r", "\r", "\n"), "", $data);

为了检索数据,我尝试直接回显值 -({{ }} 是 Laravel 的回显)

<tr> 
  <td>{{ $item->data }}</td>
</tr>

但是,这是在页面上显示 <br /> 标记,而不是将它们转换为新的换行符。


然后我尝试使用这种方法,我相信它会起作用,但是,这也在文本上显示 &#13; 而不是将其转换为新行。

<tr> 
  <td>@if ($item){{ str_replace('<br />', '&#13;', $item->data) }}@endif</td>
</tr>

还尝试使用 '\n''\n' 将 br 标签替换为 \n str_replace() 但没有成功

如何在 table 中像往常一样将 <br /> 标签变成新行?

这与table无关。

参见the documentation

Blade {{ }} statements are automatically sent through PHP's htmlentities function to prevent XSS attacks.

By default, Blade {{ }} statements are automatically sent through PHP's htmlentities function to prevent XSS attacks. If you do not want your data to be escaped, you may use the following syntax:

Hello, {!! $name !!}.

Be very careful when echoing content that is supplied by users of your application. Always use the escaped, double curly brace syntax to prevent XSS attacks when displaying user supplied data.