`

php多文件上传,文件上传封装

    博客分类:
  • php
 
阅读更多

/**
 * add by huangwenyuan 2011-7-27 多文件上传,返回一个数组,该数组内存放数组,每个数组包含文件上传的随机码文件名和真实文件名
 * Enter description here ...
 * @param unknown_type $formFilename
 * @param unknown_type $filePath
 * @param unknown_type $newFileName
 * @param unknown_type $fileTypeArray
 * @param unknown_type $fileMaxSize
 */
function filesUpload($formFilename, $filePath,
               $fileTypeArray= array('image/pjpeg','application/pdf'), $fileMaxSize = 2000000){

     $file_num = count($_FILES[$formFilename]['name']);//获取文件上传个数
  $msgPaths = array();
    
     for ($i = 0; $i < $file_num; $i++) {
      $file_name = $_FILES[$formFilename]['name'][$i];
  $file_type = $_FILES[$formFilename]['type'][$i];
  $file_temp = $_FILES[$formFilename]['tmp_name'][$i];
  $file_size = $_FILES[$formFilename]['size'][$i];
  $file_error = $_FILES[$formFilename]['error'][$i];
  
  if($file_error>0){
   $msg = 1;
      switch($file_error) {
             case 1: $msg = 2; break;
             case 2: $msg = 2; break;
             case 3: $msg = 3; break;
             case 4: $msg = -1; break;
         }
  }else if($file_size > $fileMaxSize){
   $msg = 2;
  }else if(! in_array($file_type, $fileTypeArray)){
   $msg = 4;
  }else if(! f_createDirN($filePath)){
   $msg = 5;
  }else{
   $ext = f_getExt($file_name); //扩展名
   $new_file_name = f_random().$ext;
 
   //$fileName = iconv("utf-8","gbk",$fileName); //处理中文乱码
   move_uploaded_file($file_temp, $filePath . iconv("utf-8","gbk",$new_file_name));   
   $msg = 0;
  }
  
  $msgPath = array(
      'filePath' => $filePath.$new_file_name,
   'fileName' =>$file_name
  );
  
  $msgPaths[$i] = $msgPath;
    }    

    return $msgPaths;
}

分享到:
评论

相关推荐

    php-upload封装类上传文件,多单文件上传.zip

    本压缩包“php-upload封装类上传文件,多单文件上传.zip”提供了一个完整的PHP文件上传解决方案,包括单文件和多文件上传功能,并附带了演示示例。 核心知识点: 1. **PHP文件上传原理**:PHP通过`$_FILES`全局变量...

    php文件上传代码以及封装的上传类

    php文件上传代码以及封装的上传类,&lt;?php //接收 $username=$_POST['username']; $fileintro=$_POST['fileintro']; //echo $username.$fileintro; //获取文件信息 /* echo "&lt;pre&gt;"; print_r($_FILES); ...

    php封装的单文件(图片)上传类.zip

    主要介绍了php封装的单文件(图片)上传类,结合完整实例形式分析了php图片文件上传操作的相关处理技巧,供朋友们学习参考。 参数1:$file 文件数组 5个属性值 name,type,size,tmp,error 参数2:文件保存的路径$path ...

    单文件与多文件的上传封装

    总结,PHP文件上传涉及到HTML表单的正确配置、服务器端PHP脚本的处理,以及可能的错误检查和文件移动操作。通过封装这些操作,可以创建可复用的代码,使得文件上传功能更加灵活和易于维护。在实际应用中,还应考虑...

    php多文件上传类.zip

    在PHP开发中,多文件上传是一项常见的需求,特别是在构建用户交互性强、数据交换频繁的Web应用时。"php多文件上传类.zip" 提供了一个专为处理这种需求设计的类库,它允许用户同时上传多个文件,提高了工作效率,简化...

    PHP文件上传类

    以下是对"PHP文件上传类"的详细解析: 1. **类的结构**: - 一个PHP文件上传类通常包含一系列的方法,如`upload()`用于执行实际的文件上传操作,`checkFileSize()`用于检查文件大小,`checkFileType()`用于验证...

    php使用upload封装类上传文件

    在PHP中,上传文件是一项常见的任务,特别是在构建Web应用程序时。...这个类可以根据具体需求进行定制,例如添加对多文件上传的支持、验证文件内容、重命名文件等。熟悉这些概念对于提升PHP开发能力是非常有帮助的。

    实现多文件上传的php类库

    这个"实现多文件上传的php类库"应该是封装了这些功能,提供了一套统一的API,使得开发者可以方便地进行文件上传操作。 类库的核心功能可能包括: 1. **错误处理**:类库应该能捕获并处理各种可能出现的错误,如文件...

    CodeIgniter框架 CI框架 多文件上传封装类

    在本主题中,我们主要探讨如何在CI框架中封装一个多文件上传类,并提供详细的调用说明。 **1. 多文件上传封装类的创建** `FileUpload.php`是我们的自定义上传类,它应该扩展了CodeIgniter的内置`upload`类。首先,...

    PHP仿ASP经典上传组件(可多图,多文件上传)

    在本次讨论的“PHP仿ASP经典上传组件”中,我们将会深入探讨如何使用PHP实现类似ASP的文件上传功能,包括多图和多文件的批量上传。 1. **文件上传原理** 文件上传是Web应用中常见的需求,通常通过HTTP协议的POST...

    php使用upload封装类上传文件.zip

    这个“php使用upload封装类上传文件.zip”压缩包很可能是包含了一个自定义的PHP上传类,帮助我们更方便、更安全地进行文件上传操作。 首先,我们需要理解文件上传的基本流程。在PHP中,当用户通过表单提交文件时,...

    okhttp多文件上传

    本知识点将详细介绍如何利用OkHttp实现多文件上传,并结合服务器端代码来理解整个流程。 一、OkHttp简介 OkHttp是由Square公司开发的一个HTTP客户端库,它提供了一个简单、高效且强大的接口来处理网络请求。OkHttp...

    PHP+jQuery带进度条和删除的异步多文件上传插件

    标题中的“PHP+jQuery带进度条和删除的异步多文件上传插件”是指一个结合了PHP后端处理和jQuery前端交互的文件上传解决方案。这个插件具备了现代Web应用中用户期望的功能,如实时进度反馈、多文件选择以及文件上传后...

    php支持单个或者多个文件上传类.zip

    综上所述,"php支持单个或者多个文件上传类"是一个强大的工具,它将PHP的文件上传功能进行了封装,简化了开发者的工作,提高了代码的可读性和可维护性。通过理解和利用此类库,你可以更有效地管理Web应用中的文件...

    模仿163js多文件上传

    3. **FormData对象**:在多文件上传中,FormData对象用于封装待上传的文件数据,它可以将文件以键值对的形式打包,方便通过XMLHttpRequest或fetch API发送到服务器。 4. **AJAX或fetch**:使用XMLHttpRequest或...

    PHP实现单文件、多个单文件、多文件上传函数的封装示例

    首先,我们需要了解PHP文件上传的基本原理。 PHP通过`$_FILES`全局变量来处理文件上传。当用户提交包含`&lt;input type="file"&gt;`的表单时,服务器会接收到这些文件的信息,包括文件名、类型、临时存储路径、错误代码...

    php上传文件封装类

    php上传文件封装类,封装后使用起来方便快捷,安全

    jquery多文件上传实例

    本实例将详细讲解如何利用jQuery实现多文件上传,并结合PHP和Java后端处理上传的数据。 首先,jQuery是一个轻量级的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互。在多文件上传中,jQuery可以...

    完全封装好的php上传文件类

    总的来说,这个"完全封装好的php上传文件类"是一个强大的工具,它简化了PHP中的文件上传操作,提供了灵活的配置选项,并降低了开发和维护的成本。对于需要处理用户文件上传的PHP项目来说,这样的类是不可或缺的。

    TP5 文件上传封装方法

    在这个场景中,我们关注的是“TP5 文件上传封装方法”,这是一个实用的功能,允许开发者方便地处理用户通过表单上传的文件,无论是单个文件还是多个文件。下面我们将详细探讨TP5中文件上传的实现原理以及如何进行...

Global site tag (gtag.js) - Google Analytics