PHP实现文件上传至服务器

流程图

在这里插入图片描述

上传文件信息

上传的文件有以下信息:
在这里插入图片描述
PHP中,有一个预定义变量$_FILES是专门用来储存用户上传的文件

$_FILES变量详解

1)name 文件在用户电脑上实际名字
2)type 文件上传服务器后操作系统保存的临时路径
3)tmp_name MIME类型 用来客户端识别文件类型
4)error 文件上传代号 用来告知文件接收过程中是否出现问题
5)size 文件大小

关键函数

文件上传之后会保存在$ _FILES中,那么访问文件信息的形式就是$_FILES[‘表单 name 属性’][‘元素信息’]
1、 判断是否为上传文件 :is_uploaded_file()
2、 移动文件:move_uploaded_file()

直接贴代码:

//笔者用的是PhalApi框架
public function imgUploads(){
        if(isset($_FILES['file'])==true && is_uploaded_file($_FILES['file']['tmp_name'])){
            $upload_file = $_FILES['file']['tmp_name'];
            $uploadPath = sprintf('%s/public/uploads', API_ROOT);
            if(!file_exists($uploadPath)){
                mkdir($uploadPath, 0777);
            }
            $re_path = "http://***//***/***"; //服务器存图片的位置
            $ext = pathinfo($_FILES['file']['name'],PATHINFO_EXTENSION);

            $file_save_name = 'light_bar_code' . time();
            $move_to_file = $uploadPath . '/' . $file_save_name . '.' . $ext;
            if (move_uploaded_file($upload_file,iconv("utf-8", "gb2312",$move_to_file))){
                return array('path' => $re_path . '/' . $file_save_name . '.' . $ext);
            }
            else{
                DI()->response->setMsg("上传失败");
                return false;
            }
        }else{
            DI()->response->setMsg("上传失败");
            return false;
        }
    }
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值