从PHP数组获取值并显示它们

问题描述 投票:0回答:2

我正在执行一个名为FUND的任务,在其中可以使用PHP implode方法将许多东西与数组一起存储。在该数组中,我存储了一些FUND ID。这是数组创建代码:

<div class="custom-checkbox">
  <label for="receive[]">Select Receive Funds</label>
    @foreach($funds as $fund)
     <div class="custom-control custom-checkbox">
       <input class="custom-control-input" type="checkbox" name="receive[]" id="{{$fund->id}}" value="{{$fund->id}}">
        <label for="{{$fund->id}}"  class="custom-control-label">{{$fund->title}}</label>
     </div>
   @endforeach

这里是商店代码:

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');
}

我正在使用PHP explode方法在索引页面上显示该数组。

$receive=[];
foreach($funds as $fund){
    $receive = explode(",",$fund->receive);
}

正如我提到的,我将资金ID存储在该数组中。因此,我想通过使用资金ID显示整个行。为此,我正在使用以下查询:

@foreach($receive as $r)
  <a href="/multi" class="list-group-item">
    <p>
      <img src="{{$fund=\App\Fund::where(['id'=>$r])->get('image')}}" width="32px" height="32px"> {{$fund=\App\Fund::where(['id'=>$r])->get('title')}}
        <span class="pull-right text text-muted hidden-xs hidden-sm" style="font-size:11px;">
          <small>Reserve: {{$fund=\App\Fund::where(['id'=>$r])->get('available')}}<br>Exchange rate: {{$fund=\App\Fund::where(['id'=>$r])->get('buyrate')}}</small>
        </span>
    </p>
  </a>

@ endforeach

但是标题图像显示如下Frontend View

我怎么能没有标题就获得标题,图像和其他人员?

php laravel-5.8
2个回答
1
投票

代替括号尝试使用标签就像在下一个示例中一样;

<img src="<?=$fund=\App\Fund::where(['id'=>$r])->get('image')?>"...

如果到图像的路径正确,则应该可以。如果在此之后还有其他问题,请告诉我:)


0
投票

经过几项研究,我将其修复。这是答案:

@php $receives = \App\Fund::whereIn('id', $receive)->get(); @endphp
   @foreach($receives as $r)
       <a href="/multi" class="list-group-item">
           <p>
              <img src="{{ $r->image_url  }}" width="32px" height="32px"> {{ $r->title  }}
                <span class="pull-right text text-muted hidden-xs hidden-sm" style="font-size:11px;">
                    <small>Reserve: {{ $r->available }}<br>Exchange rate: {{ $r->buyrate }}</small>
                 </span>
            </p>
         </a>
   @endforeach
© www.soinside.com 2019 - 2024. All rights reserved.