找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 60|回复: 0
打印 上一主题 下一主题

使用PHP接受文件并获得其后缀名的方法

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 05:43:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            HTML的form表单
用html的表单模拟一个文件上传的post请求,代码如下:
   
   
   
   
  File Upload
   
  
   
   
   
    Send this File:
   
   
   
   
  

   
注意:
要确保文件上传表单的属性是 enctype="multipart/form-data",否则文件上传不了
PHP
首先,需要解释一下PHP的全局变量$_FILES,此数组包含了所有上传的文件信息

  
  • $_FILE['userfile']['name'] : 客户端机器文件的原名称
      
  • $_FILE['userfile']['type'] : 文件的MIME类型
      
  • $_FILE['userfile']['size'] : 已上传的文件大小
      
  • $_FILE['userfile']['tmpname'] : 文件被上传后在服务器存储的临时文件名
      
  • $_FILE['userfile']['error'] : 和该文件上传的错误代码

    思路
    1、生成40位的随机字符串作为文件名
    2、根据文件是图片还是语音转存到不同的文件位置
    3、暂时不做文件大小和文件类型的校验

      function processFile($files, $type) {
        $uploadName = null;
        foreach ($files as $name => $value) {
          $originalName = $value['name'];
          $arr = explode(".", $originalName);
          $postfix = $arr[count($arr) - 1];
          $tmpPath = $value['tmp_name'];
          $tmpType = $value['type'];
          $tmpSize = $value['size'];
        }
         
        $newname = EhlStaticFunction::generateRandomStr(40).".".$postfix;
         
        switch ($type) {
          case 1 :  
            // 处理声音文件
            $destination = VIDEOUPLOADDIR.$newname;
            break;
          case 2 :
            // 处理图像文件
            $destination = IMAGEUPLOADDIR.$newname;
            break;
        }
         
        move_uploaded_file($tmpPath, $destination);
      }
    而获取所上传文件的后缀名则可以使用一下代码:
    HTML
      
      
      
      

      
      
      
      

    PHP
    结果示例:

                
                
    您可能感兴趣的文章:
  • php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
  • PHP文件上传后缀名与文件类型对照表整理
  • php中批量修改文件后缀名的函数代码
  • php中取得文件的后缀名?
  • PHP获取文件后缀名的三个函数
  • php一行代码获取文件后缀名实例分析
  • PHP实现批量修改文件后缀名的方法
  • PHP实现获取文件后缀名的几种常用方法
  • php上传功能集后缀名判断和随机命名(强力推荐)
  • php 如何获取文件的后缀名
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端