文件上传php代码

这是一款使用方便简单的php文件上传函数,只你要设置三个参数就可以方便的把你指定的文件类型上传批指定的目录了,代码如下:

  1. function upfile($filename,$type,$path)
  2. {
  3. $tempfile=$_files[$filename];//接收上传的临时文件
  4. //有没有上传成功
  5. if($error=$tempfile["error"])
  6. {
  7. switch($error){
  8. case 1:$errorstr="上传的文件超过了2m请返回检查。";break;
  9. case 2:$errorstr="上传文件的大小超过了 html 表单中限定值8m";break;
  10. case 3:$errorstr="文件只有部分被上传";break;
  11. case 4:$errorstr="没有文件被上传";break;
  12. case 6:$errorstr="找不到临时文件夹";break;
  13. case 7:$errorstr="文件写入失败";break;
  14. }
  15. showmsg($errorstr);
  16. }
  17. //文件类型是否在允许的范围内
  18. $filename=$tempfile["name"];//取上传原文件名
  19. $tmparr=explode(".",$filename);
  20. $extname=strtolower($tmparr[count($tmparr)-1]);//取出原扩展名并转为小写字母
  21. if(!in_array($extname,$type)) showmsg("上传的文件类型不允许,请返回检查.");
  22. //改文件名
  23. $newfile="zy".time().rand(100,1000).".".$extname;//构成新的文件名
  24. //路径
  25. $path.=$newfile;
  26. //重名判断
  27. if(file_exists($path)){
  28. $newfile="zy".time().rand(100,1000).".".$extname;//构成新的文件名
  29. $path.=$newfile;
  30. }
  31. if(!move_uploaded_file($tempfile['tmp_name'],$path))showmsg("文件移动失败。");
  32. return $newfile;
  33. }//开源代码phpfensi.com
  34. //上传函数调用方法,代码如下:
  35. upfile($filename,$type,$path);
  36. /*
  37. 参数:
  38. $filename 为上传表单 type=file的名称
  39. $type 允许上传的文件类型
  40. $path 保存到文件路径