php - 在数据库中保存多行字段,在 View 中显示为一行

标签 php mysql string laravel

首先,请注意,我知道我应该使用 {!! code here !!}在 Laravel 中解析 HTML。 但这不是问题。

我有一个文本区域,人们可以在其中写入有关他们想要销售的产品的描述,一旦将其保存到 phpmyadmin 中的数据库中,我可以看到输入是多行。

但是,当我这样做时{!! $product->description !!}在我看来,它显示了所有 description单行。

我找到了解决方法,但我认为必须有更好的方法来解决这个问题。

我发现的解决方法是执行以下操作,将新行替换为 <br> HTML 标签:

$d = $product->description;

$d = str_replace("\r\n","<br>", $d); // for Windows
$d = str_replace("\n","<br>", $d); // for Linux-like operating systems

然后我回显 $d 而且效果很好,有没有更好的方法来解决这个问题?

我使用的是 Laravel 5.5。

最佳答案

我有一个更好的主意给你。 使用\r 或\n 保存多行没有任何问题。按原样使用即可。 然后,要显示带有换行符的文本,请使用 laravel Blade 中的 line blow 。

{!! nl2br($product->description) !!}

关于php - 在数据库中保存多行字段,在 View 中显示为一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48718596/

相关文章:

javascript - 用逗号和空格连接两个字符串

ruby - 如何在 Ruby 中匹配和迭代另一个字符串

php - 使用产品信息在一行中获取产品类别

php - PHP 检查 if 语句有多远?

php - fatal error :第 62 行调用未定义的方法 Action::execute()/home/public_html/system/engine/event.php

php - 先更新或删除,然后插入

php - 我可以对多个表使用单个 CodeIgniter 模型吗?

php - Form::model 绑定(bind) Laravel 与 <select multiple>

While循环中的MYSQL存储过程变量

c - 使用 %d 或 %i 进行类型转换后进行打印会产生意外的输出