【发布时间】:2020-01-14 07:26:19
【问题描述】:
我使用 PHP implode 方法将一些 id 保存在一个数组中。我使用 explode 方法显示了该数组值。但我想显示该 ID 详细信息。例如:标题、图片。我怎样才能做到这一点?
这是来自控制器的存储代码:
public function store(Request $request)
{
$request->validate([
'title'=>'required',
'image'=>'required',
'description',
'available'=>'required',
'buy'=>'required',
'account',
'receive',
]);
$image = $request->file('image');
$new_name = rand() . '.' . $image->getClientOriginalExtension();
$image->move(public_path('funds'), $new_name);
$form_data = array(
'title'=>$request->title,
'image'=>$new_name,
'description'=>$request->description,
'available'=>$request->available,
'buy'=>$request->buy,
'buyrate'=>$request->buyrate,
'sellrate'=>$request->sellrate,
'account'=>$request->account,
'receive'=>implode(',', (array)($request->receive)),
);
Fund::create($form_data);
return redirect('/admin/fund');
}
这是,我使用路由发送到索引的内容
Route::get('/', function () {
$funds = DB::table('funds')->get();
$receive=[];
foreach($funds as $fund){
$receive = explode(",",$fund->receive);
}
return view('frontend.exchangePage.exchange',['funds'=>$funds,'receive'=>$receive]);});
这是我从数组中显示的索引:
<div class="" style="{{--height: 200px; overflow: auto;--}}">
@foreach($receive as $r)
<a href="/multi" class="list-group-item">
<p>
<img src="" width="32px" height="32px"> {{ $r }}
<span class="pull-right text text-muted hidden-xs hidden-sm" style="font-size:11px;">
<small>Reserve: 1170580 BDT<br>Exchange rate: 1 BDT = 0.98 BDT</small>
</span>
</p>
</a>
@endforeach
【问题讨论】:
-
@foreach($receive as $receive) 你不能使用相同的变量名进行迭代,它会覆盖之前的值
-
是的,我试试这个:@foreach ($receive as $r) 但它仍然只给了我数组值
-
@optinix
Try json_encode()并回显$r,你得到什么,你就会得到问题。 -
$r 只会为您提供数组值,因为它是您正在迭代的数组元素。你想达到什么目标?你想要那个 id 的模型实例吗?
-
@AhmedShefeer 是的,我想要来自该 ID 的模型详细信息。
标签: php mysql laravel laravel-5.8