• PHP 文件上传


    PHP 提供了内置变量 $_FILES 来处理上传的文件。

    $_FILES 变量说明(设定表单 name 属性为 file ):
    $_FILES 变量说明
    $_FILES["file"]["name"] 客户端提交文件的原名称
    $_FILES["file"]["type"] 浏览器提供的文件的 MIME 类型,如 gif 图片为 image/gif 。不过此类型在 PHP 端并不检查,因此不要想当然认为有这个值
    $_FILES["file"]["size"] 已上传文件的大小,单位为字节
    $_FILES["file"]["tmp_name"] 文件被上传后在服务端储存的临时文件名
    $_FILES["file"]["error"] 和该文件上传相关的错误代码,为0则表示上传成功

    文件处理例子:

    <?php
    //文件存储路径
    $file_path="upload/";
    //664权限为文件属主和属组用户可读和写,其他用户只读。
    if(is_dir($file_path)!=TRUE) mkdir($file_path,0664) ;
    //定义允许上传的文件扩展名
    $ext_arr = array("gif", "jpg", "jpeg", "png", "bmp", "txt", "zip", "rar");
    
    if (empty($_FILES) === false) {
        //判断检查
        if($photo_up_size > 2097152){
            exit("对不起,您上传的照片超过了2M。");
        }
        if($_FILES["file"]["error"] > 0){
            exit("文件上传发生错误:".$_FILES["file"]["error"]);
        }
    
        //获得文件扩展名
        $temp_arr = explode(".", $_FILES["file"]["name"]);
        $file_ext = array_pop($temp_arr);
        $file_ext = trim($file_ext);
        $file_ext = strtolower($file_ext);
        //检查扩展名
        if (in_array($file_ext, $ext_arr) === false) {
            exit("上传文件扩展名是不允许的扩展名。");
        }
        //以时间戳重命名文件
        $new_name = time().".".$file_ext;
        //将文件移动到存储目录下
        move_uploaded_file($_FILES["file"]["tmp_name"],"$file_path" . $new_name);
        //向数据表写入文件存储信息以便管理
        //*********** 代码略 ***********//
        echo "文件上传成功!";
        exit;
    } else {
        echo "无正确的文件上传";
    }
    ?>
  • 相关阅读:
    box布局中文字溢出问题
    清除浮动
    react状态提升问题::::
    React两三事
    java直接调用kmeans聚类
    java实现文本词频统计
    java 中list.toArray方法的使用
    java中Map<String,Double>map按照value降序排列
    和声搜索算法java实现
    java 自动打开浏览器并点击
  • 原文地址:https://www.cnblogs.com/bk7788/p/6649886.html
Copyright © 2020-2023  润新知