当前位置: 首页 > 图文教程 > 网络编程 > PHP > php大文件上传经典源码

PHP
连载3:利用PHP创建由Oracle驱动的SOAP服务
连载4:利用PHP创建由Oracle驱动的SOAP服务
理解Zend 框架 用PHP构建完美的阅读器
利用单元测试在每个层上对PHP代码进行检查
视频演示:Zend Platform功能特性详解
967个函式列表 PHP常用语法索引速查表
心得:PHP对文本数据库的五大基本操作方法
日记整理:Apache+MySql+PHP的快速安装
怎样才能成为PHP高手?学会"懒惰"的去编程
使用m17n实现对各国语言间的代码移植和转换
理解Zend 框架(1):构建完美的阅读器
理解Zend 框架(4): 用Zend_HTTP_Client 获取无提要的内容
ajax的最大缺点是什么?对搜索引擎的支持较弱
windows环境下mysql数据库的主从同步备份步骤
用AJAX实现聊天功能(part 1)
实例:用PHP实现Ftp用户的在线管理
利用PHP和CSS改变网页文字大小
PHP开发大型项目的方法[OOP思想]
直接读取数据库信息的三种方法
PHP5.3中新增的魔术常量__DIR__

PHP 中的 php大文件上传经典源码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 106 ::
收藏到网摘: n/a

以下为引用的内容:

function function_upload($name,$newname="",$dir="upload")
{
 global $_FILES,$ext;

 $return="";

 $time=time();

 $upload=trim($_FILES[$name]['tmp_name']);

 $upload_name=trim($_FILES[$name]['name']);

 $size=trim($_FILES[$name]['size']);

 if(empty($upload) or empty($upload_name) or $size==0)
 {
  return $return;
 }

 $dir.="/".date("Y-m",$time);

 if (is_uploaded_file($upload))
 {
  $ext=file_extension($upload_name);

  if(liu_mkdir($dir))
  {
   
   if($newname!="")
   {
    
    $newname.=".".$ext;
    //$newname=TIME_NOW.".".$ext;
   }else{
    //$newname=$upload_name;
    $newname=$time.".".$ext;
   }

   if(move_uploaded_file($upload,$dir."/".$newname) and file_exists($dir."/".$newname))
   {
    chmod($dir."/".$newname,0755);
    $return=$dir."/".$newname;
   }
  }

 }

 return $return;

}

function file_extension($filename)
{
 return substr(strrchr($filename, '.'), 1);
}

function liu_mkdir($dir,$mode=0777)
{
 if(is_dir($dir))
 {

  if(!is_writable($dir))
  {

   @chmod($dir,$mode);

  }
  return true;
 }
 else
 
 {

  $oldmask = @umask(0);

  $partialpath = dirname($dir);

  if(!liu_mkdir($partialpath,$mode))
  {

   return false;

  }
  else

  {
   return mkdir($dir,$mode);
  }

 }
}