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

PHP
PHP教程:插件机制在PHP中实现方案
PHP开源网站程序如何使用的更好
PHP和mysql+jqueyr建立类twitter站点
PHP服务端代理页面开发
PHP理论教程:如何才能自动获取关键词
PHP教程:imagefilledrectangle函数生成渐变图片
PHP教程:配置smarty开发环境
PHP扩展curl和正则表达式轻松采集新闻
PHP4,PHP5,ASP.NET开发优劣比较
PHP教程:PHP随机显示目录下图片的源码
HTTP Headers简明易懂的教程
PHP导入和导出Excel文件
PHP 5.3 的重要特性:命名空间
PHP教程:GD库的imagecolorset函数简单修改图片颜色
PHP5教程:PHP的GD模块生成条形码
PHP网站程序乱码问题解决方法
PHP教程:php内置函数intval()
PHP大量Session的散列及过期回收
实现基本QQ功能的PHP类:QQ机器人
PHP+MYSQL网站SQL Injection攻防

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 108 ::
收藏到网摘: 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);
  }

 }
}