在数组Laravel 5.4上调用成员函数hashName()

时间:2017-05-10 11:28:56

标签: php laravel laravel-5 image-uploading

我尝试在数据库中的同一输入和同一行上传多个图像 同样的方式与我一起使用单个图像上传 但是当我尝试使用多个图像时,我遇到了错误

这是我的代码:
     控制器

$files = $request->file('file');
if(!empty($files)) :
    foreach($files as $file) :
      $name = time().$file->getClientOriginalName();
      Storage::putfile('public/images', $request->file('file'));
      $file->move('images/client/preview', $name);
      $car->file = $name;
    endforeach;
endif;

HTML

 <div class="form-group {{ $errors->has('file') ? ' has-error' : '' }} ">
  <input class="form-control" type="file" id="files" name="file[]" value="{{ old('file')}}" multiple />
  <output id="list"></output>
  @if($errors->has('file'))
  <div class="alert alert-danger alert-dismissable">
    <i class="fa fa-info"></i>
    <b>Alert!</b> {{ $errors->first('file') }}
  </div>
  @endif
</div>


这里的错误:

I got this error

1 个答案:

答案 0 :(得分:2)

抱歉,我最初错过了您的问题,请不要将请求作为Storage::putfile()的第二个参数传递,而是使用循环中的变量

$files = $request->file('file');
if(!empty($files)) :
    foreach($files as $file) :
      $name = time().$file->getClientOriginalName();
      Storage::putfile('public/images', $file);
      $file->move('images/client/preview', $name);
      $car->file = $name;
    endforeach;
endif;

错误的原因是因为Storage::putfile()的第二个版本是一个数组。