返回顶部

收藏

PHP文件上传

更多

php的文件上传示例代码:

<html>
<head>
<title>图片上传</title>
</head>
<body>
<form enctype="multipart/form-data" method="post" name="upform">
上传文件:<input type="file" name="upfile" value="">
<input type="submit" value="上传"><br>
<?php
//能够上传的类型
$uptypes=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif',
'image/bmp','image/x-png');
?>
允许上传的文件类型为:<?=implode(',',$uptypes)?>
</form>
</body>
</html>
<?php
$max_file_szie=2*pow(2,20);  //上传的文件小于2MB
$destination_folder='uploadimg/'; //上传文件保存路径
if($_SERVER['REQUEST_METHOD']=='POST'){  
        if(!is_uploaded_file($_FILES['upfile']['tmp_name'])){
                echo '图片不存在!';
                exit;
            }
        if($max_file_szie<$_FILES['upfile']['size']){
                echo '文件太大了!';
                exit;
            }
        if(!in_array($_FILES['upfile']['type'],$uptypes)){
                echo '文件类型不符合!'.$_FILES['upfile']['type'];
                exit;
            }
        if(!file_exists($destination_folder)){
                mkdir($destination_folder);
            }
        $filename=$_FILES['upfile']['tmp_name'];
        $image_size=getimagesize($filename);
        $pinfo=pathinfo($_FILES['upfile']['name']); //文件路径信息
        $ftype=$pinfo['extension']; //旧文件后缀名
        $destination = $destination_folder.time().".".$ftype; //新文件名称
        if(file_exists($destination)&&$voerwrie !=true){
                echo '同名文件已经存在了!';
                exit;
            }
        //把上传的文件从临时文件夹移动到指定目录
        if(!move_uploaded_file($filename,$destination)){ 
                echo '移动文件出错了!';
                exit;
            }
        $pinfo=pathinfo($destination);
        $fname=$pinfo[basename];
        echo "<font color='red'>已经成功上传</font><br>文件名:
              <font color='blue'>".$destination_folder.$fname."</font><br>";
        echo '宽度:'.$image_size[0];
        echo '高度:'.$image_size[1];
        echo '<br>大小:'.$_FILES['upfile']['size']."bytes";
    }
?>

标签:php,文件上传

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. tangw 发表 2013-04-12 02:32:39 phpcms图片上传漏洞解析
  2. 小菜鸡 发表 2013-01-31 03:20:06 PHP算法之冒泡排序
  3. kcloze 发表 2016-10-24 15:55:17 PHP框架乱象
  4. 雪候鸟 发表 2012-08-30 10:47:52 PHP5.5或将引入Generators
  5. libo 发表 2017-01-12 12:39:07 涨姿势 – 不一样的服务端长连接方案 – 客户端代理
  6. H.E. 发表 2010-02-03 05:18:26 Java+PHP整合=混血新宠儿
  7. ken 发表 2017-01-20 00:56:23 php升级成5.6.29时候页面乱码问题根源浅析
  8. admin 发表 2013-01-29 08:07:12 CentOS下安装ImageMagick和PHP Imagick扩展
  9. gouki 发表 2017-02-07 14:26:00 Laravel action helper函数用法
  10. Panni_007 发表 2013-03-14 05:45:16 【科普】当上传的PHP找不到地址时候的思路:之一
  11. zhu329599788@126 发表 2017-02-21 07:19:50 PHP调试时print_r ,var_dump的区别
  12. i.Posei 发表 2012-11-24 04:26:14 VPS上搭建Nginx+PHP+MongoDB环境