使用 laravel 5.2 上传图像


Uploading images with laravel 5.2

我正在尝试为我的 laravel 项目创建一个简单的上传图像功能,但我不断收到此错误:

FatalThrowableError in UploadController.php line 23:
Fatal error: Call to a member function hasFile() on null

这是我的控制器:

  public function uploadImg(Request $request){
    $input = $request->input();
    if($input->hasFile('file')){
      echo 'Uploading';
      $file = $input->file('file');
      $file->move('uploads', $file->getClientOriginalName());
      echo 'Uploaded';
    }
  }

这是我的表格:

<form action="/admin/media/uploadImg" method="post" enctype="multipart/form-data">
    <label>Select image to upload:</label>
    <input type="file" name="file" id="file">
    <input type="submit" value="Upload" name="submit">
    <input type="hidden" value="{{ csrf_token() }}" name="_token">
  </form>

> hasFile() 方法仅适用于请求对象,不适用于输入数组。试试这个:

if($request->hasFile('file')){

请参阅:https://laravel.com/docs/5.2/requests#files

您还需要更改此行:

$file = $input->file('file');

自:

$file = $request->file('file');