如何解决无法在Laravel中使用vue.js上传多张图片
我想在laravel中上传多个图像,因为我正在使用以下代码,但出现错误:
消息:“调用成员函数getClientOriginalExtension() 字符串
formData.append('gallery_img[]',this.form.gallery_img);
uploadGalleryImg(e){
var files = e.target.files;
if (!files.length)
return;
for (var i = files.length - 1; i >= 0; i--) {
this.form.gallery_img.push(files[i]);
}
},
控制器:
if (count(array($request->gallery_img))) {
foreach ($request->gallery_img as $image) {
$fileName = time().'.'.$image->getClientOriginalExtension();
$image->move(public_path('img/gallery_img/'),$fileName);
}
}
解决方法
尝试使您的foreach像这样:
foreach ($request->gallery_img as $key => $image)
问题是$ image被认为是一个字符串,所以我认为这是关键,其值是实际的图像。 如果那不起作用,而您只想从文件名中获取扩展名,则可以将explode native php函数与“。”一起使用。计分器。
$explodedImage = explode(".",$image);
$extension = $explodedImage[count($explodedImage)-1]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。