【发布时间】:2021-07-18 19:26:44
【问题描述】:
请需要帮助。我将图像作为数组存储在数据库中。那么我如何解码刀片视图模板上的数组图像。我的控制器就是这样的
public function store(Request $req){
$req->validate([
'name' => 'required',
'imageFile' => 'required',
'imageFile.*' => 'mimes:jpeg,jpg,png,gif,csv,txt,pdf|max:2048'
]);
if($req->hasfile('imageFile')) {
foreach($req->file('imageFile') as $file)
{
$name = $file->getClientOriginalName();
$file->move(public_path().'/uploads/', $name);
$imgData[] = $name;
}
$fileModal = new Image();
$fileModal->name = $req->input('name');
$fileModal->image_path = json_encode($imgData);
$fileModal->save();
return back()->with('success', 'Images has successfully uploaded!');
}
}
而图像模型就是这样的......
class Image extends Model
{
use HasFactory;
protected $fillable = [
'name',
'image_path'
];
}
但是当我使用这段代码时,它显示的是数组数据,而不是图像。
<img src="{{ URL::asset("uploads/".$photo->image_path) }}" alt="{{ $photo->name }}" style="width:150px; height:auto;">
之后,我将放置另一个代码:
@foreach ($photos as $photo)
@php $filenames = json_decode($photo->image_path); @endphp
@foreach ($filenames as $singlefilename)
<img src="{{ url('uploads/' . $singlefilename) }}" width="100px"/>
@endforeach
@endforeach
但当时它显示了包含该文件夹的所有图像,但我只需要根据 id 的行数组图像。请我需要帮助。任何人都可以帮忙吗?
【问题讨论】:
标签: arrays laravel laravel-blade laravel-8