繁体   English   中英

在 Laravel 中上传图片

[英]Upload image in Laravel

我在控制器中尝试这些代码:

public function uploadimage(Request $request)
    {
        if ($request->hasFile('image')) {
            $destinationPath = 'uploads';
            $files = $request->image;
            $file_name = $files->getClientOriginalName();
            $files->move($destinationPath, $file_name);
            echo "Complete";
        } else {
            echo "No File";
        }
    }

我的 HTML 输入文件:

 <input name="image" type="file" id="image"/>

但我无法上传。 有什么想法吗?

您可以使用storage::putFile('folder_name', $request->image)这将返回自动生成的文件名,您可以将其存储在您的数据库中。

并确保您的默认文件系统设置为 public 并且您的表单具有此enctype="multipart/form-data"

参考https://laravel.com/docs/5.5/filesystem#storing-files

同时,它的工作方式不同:

<?php

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class UserAvatarController extends Controller
{
    /**
     * Update the avatar for the user.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request)
    {
        $path = $request->file('avatar')->store('avatars');
        return $path;
    }
}

来源: Laravel 8 - 文件系统 > 文件上传

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM