前端之家收集整理的这篇文章主要介绍了
PHP上传类upload.php的简单示例,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
对
PHP上传类|
PHP上传类upload.
PHP的具体
方法感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
/**
* PHP上传类|PHP上传类upload.PHP的具体方法
*
* @param
* @arrange 512-笔记网: jb51.cc
**/
<?PHP
/*
接受前页面的值
0 UPLOAD_ERR_OK 文件上传成功
1 UPLOAD_ERR_INI_SIZE 上传文件超过了PHP.ini中设置的最大值
2 UPLOAD_ERR_FORM_SIZE 上传的文件超过了表单设置最大值
3 UPLOAD_ERR_PARTAL 文件只上传了部分
4 UPLOAD_ERR_NO_FILE 没有文件被上传
*/
$upload_err =$_FILES["file"]["error"]; //获取文件上传的错误信息
$file_source_name =$_FILES["file"]["name"]; //原始文件名
$file_temp_name =$_FILES["file"]["tmp_name"]; //临时文件名
$file_type =$_FILES["file"]["type"]; //文件mime类型
$file_size =$_FILES["file"]["size"]; //文件大小
function getErr($intErr)//用来输出错误信息
{
$errStr="";
switch($intErr)
{
case 1:
$errStr="文件超过系统最大值!";
break;
case 2:
$errStr="文件超过表单最大值";
break;
case 3:
$errStr="文件部分上传!";
break;
case 4:
$errStr="文件没有上传";
break;
}
return $errStr;
}
function getmicrotime()
{
list($usec,$sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
function getfilename($ext) //获取定长随即文件名
{
$filename=getmicrotime();
$filename=eregi_replace("\.","",$filename);
$filename=$filename.".".$ext;
return $filename;
}
function canupload($strExt) //检查文件是否允许上传
{
global $canuploadext;
$arrExt=explode(",",$canuploadext);
$canupload=false;
for($index=0;$index<sizeof($arrExt);$index++)
{
if($arrExt[$index]===strtolower($strExt))
{
$canupload=true;
break;
}
}
return $canupload;
}
function getFileExt($strFileName) //获取文件后缀名
{
return substr($strFileName,strrpos($strFileName,".")+1);
}
$upload_dir="upload"; //上传的目录
$currDir=getcwd();
//如果制定的上传目录不存在 则创建目录
$targetDir=$currDir."\\".$upload_dir;
if(!file_exists($targetDir))
{
@mkdir($targetDir,"0777");
}
if($upload_err==0)
{
//将已上传的文件从临时目录移动到制定目录
//生成新的文件名
$targetfilename=$targetDir."\\".$file_source_name;
if(!move_uploaded_file($file_temp_name,$targetfilename))
{
echo "文件上传失败!";
}else
{
echo "文件上传成功!";
}
}else
{
echo getErr($upload_err);
}
?>
/*** 来自编程之家 jb51.cc(jb51.cc) ***/