首页 > 解决方案 > Laravel 上传图片“控制器”

问题描述

我正在按照本教程在 Laravel 中上传图像。

它说“成功创建控制器后,转到 app/controllers/ImageController.php 并输入以下代码:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Validator,Redirect,Response,File;

class ImageController extends Controller
{

    public function index()
    {
        return view('image');
    }

    public function save()
    {
       request()->validate([
            'fileUpload' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
       ]);
       if ($files = $request->file('fileUpload')) {
           $destinationPath = 'public/image/'; // upload path
           $profileImage = date('YmdHis') . "." . $files->getClientOriginalExtension();
           $files->move($destinationPath, $profileImage);
        }
        return Redirect::to("image")
        ->withSuccess('Great! Image has been successfully uploaded.');

    }
}

request但是,我的代码编辑器检测到此行中的单词有错误

 if ($files = $request->file('fileUpload')) {

有谁知道为什么?

标签: laravelimageupload

解决方案


如果要使用变量$request,则需要将其作为参数注入方法中。

否则,request()请像验证时那样使用帮助程序。

public function save()
{
   request()->validate([
       'fileUpload' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
   ]);
   if ($files = request()->file('fileUpload')) {
       $destinationPath = 'public/image/'; // upload path
       $profileImage = date('YmdHis') . "." . $files->getClientOriginalExtension();
       $files->move($destinationPath, $profileImage);
    }
    return Redirect::to("image")->withSuccess('Great! Image has been successfully uploaded.');
}

使用变量$request

public function save(Request $request)
{
   $request->validate([
       'fileUpload' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
   ]);
   if ($files = $request->file('fileUpload')) {
       $destinationPath = 'public/image/'; // upload path
       $profileImage = date('YmdHis') . "." . $files->getClientOriginalExtension();
       $files->move($destinationPath, $profileImage);
    }
    return Redirect::to("image")->withSuccess('Great! Image has been successfully uploaded.');
}

推荐阅读