【代码】php 怎样实现单个文件上传

<?php
/*
 * 文件上传:
 *      1、如何控制上传文件
 *      2、对上传文件判断(格式、大小)
 *      3、学习执行文件上传操作方法
 *      $_FILES 数组元素
 *      $_FILES[filename][name]:存储上传的文件名
 *      $_FILES[filename][size]:存储上传的文件大小,单位为字节
 *      $_FILES[filename][tmp_name]:存储文件在临时目录中使用的文件名
 *      $_FILES[filename][type]:存储上传文件的MIME类型,类型由"/"分隔
 *      $_FILES[filename][error]:存储与文件上传相关的错误代码
 *                          0:上传成功
 *                          1:上传文件的大小超出了PHP配置
 *                          2:表示上传文件大小超出了表单中MAX_FILE_SIZE选项所指定的值
 *                          3:表示文件只被上传了一部份
 *                          4:表示没有上载任何文件
 * /
    if(!empty($_FILES['up_picture']['name'])){              //判断上传内容是否为空
        if($_FILES['up_picture']['error']>0){                //判断文件是否可以上传到服务器
            echo "上传错误:";
            switch ($_FILES['up_picture']['error']){
                case 1:
                    echo "上传文件大小超出配置文件规定值";
                    break;
                case 2:
                    echo "上传文件大小超出表单中约定的值";
                    break;
                case 3:
                    echo "上传文件不全";
                    break;
                case 4:
                    echo "没有上传文件";
                    break;
            }
        }else{
            list($maintype,$subtype)=explode("/", $_FILES['up_picture']['type']);//获取上传文件类型
            if($maintype!="image"||$subtype!="pjpeg"){   //判断上传文件格式是否正确
                echo "上传文件格式不正确";
            }else{
                if(!is_dir("upfile")){                  //判断指定目录是否存在
                    mkdir("upfile");                    //创建目录
                }
                $path = "upfile/".time().strtolower(strstr($_FILES['up_picture']['name'], "."));//动态创建生成文件路径
                if(is_uploaded_file($_FILES['up_picture']['tmp_name'])){//判断文件是否可以上传
                    if(move_uploaded_file($_FILES['up_picture']['tmp_name'], $path)){  //如果上传成功
                        echo "文件:<span class='STYLE1'>".time().strtolower(strstr($_FILES['up_picture']['name'], "."))
                        ."</span> 上传成功,大小为:<span class='STYLE1'>".$_FILES['up_picture']['size']."</span>字节";
                    }else{
                        echo "上传失败";
                    }
                }else{
                    echo "上传文件:<span class='STYLE1'>".$_FILES['up_picture']['name']."</span>不合法!";
                }
            }
        }
    }
?>
<form action="06.php" method="post" enctype="multipart/form-data">
    <input type="hidden" name="MAX_FILE_SIZE" value="100000" />
    <input type="file" name="up_picture">
    <input type="submit" value="上传"/>
</form>


以上是本文关于php 怎样实现单个文件上传的详细代码,希望本文对广大php开发者有所帮助,感谢阅读本文。更多有关php技术问题欢迎加群探讨:304224365 ,验证码:csl,不写验证不予通过。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值