【问题标题】:Laravel 5.8 wrap every new line in an <li></li>Laravel 5.8 将每个新行包装在 <li></li>
【发布时间】:2019-03-25 02:08:56
【问题描述】:

我目前正在使用 Laravel 开发一个食谱网站,但在我的食谱展示页面(显示单个食谱)上遇到了问题。食谱展示页面显示描述、成分和分步说明。 我的成分和分步说明都作为一个字符串插入到我的数据库中。输入表单要求用户在单独的行上列出每个成分/步骤。然后我使用 PHP 函数 nl2br() 将信息显示为列表。但是,我非常希望能够控制每一行,最好能够在每一行周围包裹一个 li,我以后可以在 CSS 中设置样式。

我在 Stackoverflow 上找到了这个链接:wrap new line variable with <li>

我相信这是我正在寻找的,但是,我不确定如何将其调整为 Laravel。目前我正在使用这行代码来检索成分并逐步进行:

<p>{!! nl2br(e($recipe->directions)) !!}</p>

<p>{!! nl2br(e($recipe->ingredients)) !!}</p> 

对此的任何帮助将不胜感激,因为它有点超出我目前的专业领域!让我知道我是否需要进一步澄清这个问题或为你们提供更多背景信息!非常感谢! :)

【问题讨论】:

  • $recipe-&gt;directions 的输出是什么?
  • &lt;p&gt;{!! $recipe-&gt;directions !!}&lt;/p&gt; 你试过这个吗?
  • 你能发布任何保存在你的数据库中的演示数据吗?

标签: php laravel foreach


【解决方案1】:

通过用换行符分解字符串,将输入分解为行数组。

$lines = explode("\n", $recipe->directions);

&lt;li&gt;元素输出每一行:

<ul>
@foreach ($lines as $line)
<li>{{$line}}</li>
@endforeach
</ul>

【讨论】:

  • 非常感谢!这正是我正在寻找的解决方案!我非常感谢您的帮助:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-11
  • 1970-01-01
  • 2012-09-07
  • 1970-01-01
相关资源
最近更新 更多