thinkPHP5——后端之文件上传

所需文件:

文件上传代码:

namespace app\index\controller;
use think\Controller;
class Lib extends Controller{
    /**
    * 文件上传
    */
    public function upload(){
        //print_r($_SERVER);//查询当前服务器信息
        //接收文件流数据
        $file = request()->file('image');
        if (empty($file)) {
            return json(['code'=>400,'msg'=>'请选择上传文件']);
        }
        //整理路径/文件名
        // 转化文件名字符
        $savename = iconv("UTF-8", "gbk",$file->getInfo()['name']);
        //移动到框架应用根目录/public/uploads/ 目录下
        //保存文件
        $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads',$savename);
        //返回文件路径
        $data = 'http://'.$_SERVER['HTTP_HOST']. '/public/uploads/' . $file->getInfo()['name'];
        if ($info) {
            echo json_encode(['img'=>$data]);exit;
        }
        else {
            //上传失败获取错误信息
            return json(["code" => -4, "msg" => "文件上传失败", "data" => $file->getError()]);
        }
    }

查看是否能实现,可用postman软件:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值