A-A+

上传文件代码,仅适合初学者,代码简洁易懂

2012年11月07日 PHP源码分享 暂无评论 阅读 293 views 次

php的上传文件功能在php里举足轻重,是常用的功能之一,比如我们要上传下载文件,或者是要处理上传的图片等,都需要利用到php的上传技术,对于简单的没有什么要求的站点,利用一个简单的上传文件代码即可以搞定,下面是一个简单的php新手上传文件的代码,仅适合初学者研究,代码简洁易懂,当然,php的上传技术远不至此,我们可以在网上找到非常多的免费php上传文件类,功能相当完善,而这些只需要一个类文件即可以实现,如果你还是一个新手,就可以研究一下这款上传文件的代码:

<?php    
/****************************************************   
参数说明:   
$max_file_size :设置上传文件大小   
$destination_folder :上传文件保存的路径   
$imageview :是否生成缩略图(1为生成,其他为不生成)   
$imageviewsize :缩略图比例(默认为1/2,也就是50%的大小)   
 
*****************************************************/    
//上传文件类型    
$FileTypes=array(    
'image/jpg',    
'image/jpeg',    
'image/pjpeg',    
'image/png',    
'image/gif'    
);    
$max_file_size=100000; //限制上传文件大小    
$destination_folder='upfile/'; //上传文件保存路径    
$imageview=1; //是否生成缩略图(1为生成,其他未不生成);    
$imageviewsize=1/2; //缩略图比例;    
?>    
<html>    
<head>    
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title>图片上传 Powered By Longxi</title>    
<style type="text/css">    
body{font-size:14px;}    
input{border:1px #d8d8d8 solid;}    
</style>    
</head>    
<body>    
<form enctype="multipart/form-data" method="POST" action="" name="up
form">    
<input type="file" name="file" /><br /><br />    
<input type="submit" name="submit" value="开始上传" />    
</form>    
<?php    
if($_SERVER&#91;'REQUEST_METHOD'&#93;=='POST'){    
if(!is_uploaded_file($_FILES&#91;'file'&#93;&#91;tmp_name&#93;)){    
echo '文件不存在';    
exit;    
}    
$upfile=$_FILES&#91;'file'&#93;;    
if($max_file_size < $upfile&#91;'size'&#93;){    
echo '文件过大';    
exit;    
}    
if(!in_array($upfile&#91;type&#93;,$FileTypes)){    
echo '文件类型不符合';    
exit;    
}    
if(!file_exists($destination_folder)){    
mkdir($destination_folder);    
}    
//定义上传文件变量    
$filename=$upfile&#91;'tmp_name'&#93;;    
$file_size=getimagesize($filename);    
$pinfo=pathinfo($upfile&#91;'name'&#93;);    
// print_r($pinfo);    
$file_type=$pinfo&#91;'extension'&#93;;    
$destination=$destination_folder.time().".".$file_type;    
// echo $destination;    
if(file_exists($destination)){    
echo "<br />文件已经存在,没有上传成功!";    
exit;    
}    
if(!move_uploaded_file($filename,$destination)){    
echo '文件上传出错';    
exit;    
}    
$pinof=pathinfo($destination);    
//判断是否是效的图片    
if(!(@getimagesize($destination))){    
echo '禁止非法操作';    
//删除图片    
unlink($destination);    
exit;    
}    
$image_size=getimagesize($destination);    
// print_r($image_size);    
// print_r($pinfo);    
echo '文件已经上传成功,文件名为'.$pinof[basename]."<br />
<a href='".$destination_folder.$pinof&#91;basename&#93;."' target='_blank'>
打开大图片</a>";    
echo '<br />文件大小'.filesize($destination).'bytes';    
echo '<br />原图宽度'.$image_size[0];    
echo '<br />原图高度'.$image_size[1].'<br />';    
//生成缩略图    
if($imageview==1){    
echo '图片缩略图<br />';    
echo "<img src='".$destination."' width=".(floor($image_size&#91;0&#93;*$im
ageviewsize))." height=".(floor($image_size&#91;1&#93;*$imageviewsize))." 
border=1/>";    
}    
}    
?>    
</body>    
</html>

给我留言