A-A+

PHP文件上传的详细过程

2012年06月27日 PHP技术文章 暂无评论 阅读 96 views 次

在制作PHP应用程序时,经常会接触到PHP文件上传的功能,例如PHP企业网站中,就需要上传产品图片,PHP下载网站中,就需要上传源码等,都是利用了PHP的上传功能,可以看得出来,PHP文件上传在PHP程序中非常重要,那么PHP的上传功能是怎样制作出来的呢,其步骤是怎样的,如果我们去仔细学习PHP的话,经常会看到PHP上传函数 move_uploaded_file,只要掌握了这个函数,再去理解PHP文件上传的过程就不难了,无非就是利用这个函数的几个参数而已,其实利用这个函数上传时不是直接将其文件上传到了指定目录,而是先要上传到缓存中,然后再移动到指定目录,这个函数算是比较常用的一个上传函数,PHP还提供了许多 上传函数,可以仔细去研究。

下面是一个简单的利用move_uploaded_file函数进行上传文件的详细过程。主要步骤如下:1,制作上传文件的表格,2 判断文件是否上传,3移动文件到指定位置。

下边是实例:

<?   
if(is_uploaded_file($_files&#91;'myfile'&#93;&#91;'tep_name'&#93;)){
/*is_uploaded_file 判断文件是否上传函数  $_files&#91;&#93; 是系统函
数 'myfile' 是提交的文件的名 是下边 <input type="file" nam
e="myfile"><br> 中 name的值   'tep_name'  是系统默认的上传
文件所在位置  及文件名 */  
 $myfile=$_files("myfile");     //把myfile赋给变量$myfile   
$name= $myfile["name"];    //把文件的文件名赋给变量$name   
$type= $myfile["type"];      //把文件的类型赋给变量$type   
$size= $myfile["size"];      //把文件的大小赋给变量$size   
$tmp_name= $myfile["tmp_name"];   //把系统默认的文件目录及文
件名赋给变量$tmp_name   
$error= $myfile["error"];     //把系统函数error赋给变量$error   
  
switch ($type) { //switch是判断只有当文件类型为下面类型时才允许上传   
    case 'image/pjpeg' : $ok=1;     
        break;   
    case 'image/jpeg' : $ok=1;   
        break;   
    case 'image/gif' : $ok=1;   
        break;   
    case 'image/png' : $ok=1;   
        break;   
}   
if($ok&$error=="0"){        
move_uploaded_file($tmp_name,"up/" .$name) //move_uploaded_f
ile()  是移动上传文件的命令 $tmp_name是上传文件的默认路径和名,up/ 是
新移动到得位置.$name是加上文件名   
 echo "上传成功";   
}   
}   
?>   
<form action="" name="upfile" method="post" enctype="multi
part/form-date">   
<input type="file" name="myfile"><br>   
<input type="submit" name="submit" value="上传"><br>   
</form>

给我留言