@forelse($orders as $order)
<tr class="dropdown sliderow" data-toggle="collapse" data-target="#{{$order->id}}" data-parent="#myAccordion">
<td >{{$order->id}}</td>
<td>{{$order->customer_name}}</td>
<td>{{$order->customer_email}}</td>
<td>{{$order->customer_contact}}</td>
<td>{{$order->customer_address}}</td>
<td>
<div class="action-box">
<a href=""><i class="fa fa-angle-down">Details</i></a>
{{--<a href=""><i class="fa fa-remove"></i></a>--}}
</div>
</td>
<tr >
<td colspan="6">
<div class="container-fluid collapse" id="{{$order->id}}" style="position:relative;">
<div class="row">
<div class="col-sm-6">
<h2>Customer info </h2>
<b>Name</b> <span>{{$order->customer_name}}</span><br>
<b>Phone</b> <span>{{$order->customer_contact}}</span><br>
<b>Address</b> <span>{{$order->customer_address}}</span><br>
<h2>Products</h2>
<table cellpadding="1" class="table table-sm table-hover table-responsive">
<tr>
<th>name</th>
<th>quantity</th>
<th>total price</th>
</tr>
<tr>
<td>{{$order->product_names}}</td>
<td>{{$order->products_quantity}}</td>
<td>PKR 70,000</td>
</tr>
</table>
</div>
<div class="col-sm-6">
<h4>order status</h4>
<select name="delivery_status" id="" class="form-control">
<option value="status" selected>status</option>
<option value="not-deliverd">shipped</option>
<option value="delivered">shipped and received by customer</option>
</select>
</div>
</div>
</div></td></tr></tr>
</div>
@empty
<tr class="text-center warning">
<td colspan="6">No Record Found</td>
</tr>
@endforelse
上面的代码是我的订单显示代码,我想在product_name(字符串)中添加换行符
并显示如 HP I7 第 8 代、华为 p30 pro
我想换行并添加表格下一行逗号后面的第二个产品
我在数据库中存储产品是否错误,因为我将客户产品添加到数组中,然后将其转换为字符串以存储在数据库中,我现在他们正在像这样检索,如图所示
最佳答案
首先,存储product_names
因为字符串违反了 RDBMS 原则;每个产品应该是单独表( products
)中的一个条目,通过某种其他方法链接到订单( orders
)(通常是 orders
和 products
、 orders_products
的数据透视表)。
有一个简单的方法来显示这些,只需替换 ,
在字符串中 <br/>:
<td>{!! str_replace("," "<br/>", $order->product_names) !!}</td>
注意:您必须使用{!! !!}
而不是{{ }}
因此它可以正确输出 HTML。
关于php - 在来自 Laravel 数据库的字符串数据中添加换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58206946/