ThinkPHP文件上传接口

简介: ThinkPHP文件上传接口

文件上传接口

上传在项目/runtime/storage/下,返回的是相对路径.

/**
     * 文件上传接口
     * param file: /2024-06-11_09-50-43.png
     * return
     * {
     * "status": 1,
     * "msg": "上传成功",
     *  "data": {
     *     "file_path": "/uploads/20240611/6a2282ada486c614e170dff06063527f.png"
     *  }
     * }
     */
    public function uploadAjax()
    {
        // 获取上传的文件
        $file = Request::file('file');
        // 验证规则
        $validate = Validate::rule([
            'file' => 'fileExt:jpg,jpeg,png,gif|fileSize:10485760', // 限制文件扩展名和大小
        ]);
        // 验证文件
        if (!$validate->check(['file' => $file])) {
            return json(['status' => 0, 'msg' => $validate->getError()]);
        }
        // 上传文件
        try {
            /**
             * 存储在/www/wwwroot/项目名/runtime/storage/下面指定的uploads文件夹中
             */
            $savename = Filesystem::putFile('uploads', $file);
            return json(['status' => 1, 'msg' => '上传成功', 'data' => ['file_path' => '/' . $savename]]);
        } catch (\Exception $e) {
            return json(['status' => 0, 'msg' => $e->getMessage()]);
        }
    }
相关文章
|
7月前
|
PHP
thinkphp中自定义文件上传
thinkphp中自定义文件上传
44 0
|
存储 前端开发 PHP
PHP快速入门04-前后端数据交互与文件上传
文件上传是一个非常普遍的操作,PHP主要使用到了超全局变量\$_FILES。\$_FILES是PHP中的一个超级全局变量,用于在处理HTML表单时上传文件。它是一个数组,包含了上传文件的各种信息,如文件名、文件类型、临时文件名、文件大小等。$_FILES数组由表单中带有`enctype为multipart/form-data`的file类型的input元素提交而来。
154 0
|
存储 前端开发 JavaScript
后端文件上传以及下载功能实现
上一章讲到前端文件下载功能的实现,之前也讲过前端文件上传功能的实现,这一章就讲一下后端怎么接收前端上传的文件,以及怎么实现文件下载功能。
430 0
|
存储 PHP
PHP:laravel文件上传和外部访问
PHP:laravel文件上传和外部访问
89 0
|
小程序 前端开发 JavaScript
微信小程序图片上传功能(PHP后端)
微信小程序图片上传功能(PHP后端)
685 0
微信小程序图片上传功能(PHP后端)
|
前端开发 应用服务中间件 nginx
常用前端文件下载方法
经常在项目中会遇到需要下载文件的需求,根据不同的需求和项目实现情况,通常有以下几种做法。
常用前端文件下载方法
【不用框架】文件上传和下载(二 )
文件上传就是把用户的信息保存起来。
225 0
【不用框架】文件上传和下载(二 )