为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第13天 WEB在线文件管理器

课程名称:WEB在线文件管理器

课程章节:第2章 PHP文件夹操作

主讲老师:king

课程内容:

今天学习的内容包括:

  • 2-9 rename()函数实现剪切文件

  • 2-10 上传文件


课程收获:

剪切文件函数的封装 上传文件函数封装
function cutFile($filename,$dstname){
   if(file_exists($dstname)){
      if(!file_exists($dstname."/".basename($filename))){
         if(rename($filename,$dstname."/".basename($filename))){
            $mes="文件剪切成功";
         }else{
            $mes="文件剪切失败";
         }
      }else{
         $mes="存在同名文件";
      }
   }else{
      $mes="目标目录不存在";
   }
   return $mes;
}

/**
 * 上传文件
 * @param array $fileInfo
 * @param string $path
 * @param array $allowExt
 * @param int $maxSize
 * @return string
 */
function uploadFile($fileInfo,$path,$allowExt=array("gif","jpeg","jpg","png","txt"),$maxSize=10485760){
   //判断错误号
   if($fileInfo['error']==UPLOAD_ERR_OK){
      //文件是否是通过HTTP POST方式上传上来的
      if(is_uploaded_file($fileInfo['tmp_name'])){
         //上传文件的文件名,只允许上传jpeg|jpg、png、gif、txt的文件
         //$allowExt=array("gif","jpeg","jpg","png","txt");
         $ext=getExt($fileInfo['name']);
         $uniqid=getUniqidName();
         $destination=$path."/".pathinfo($fileInfo['name'],PATHINFO_FILENAME)."_".$uniqid.".".$ext;
         if(in_array($ext,$allowExt)){
            if($fileInfo['size']<=$maxSize){
               if(move_uploaded_file($fileInfo['tmp_name'], $destination)){
                  $mes="文件上传成功";
               }else{
                  $mes="文件移动失败";
               }
            }else{
               $mes="文件过大";
            }
         }else{
            $mes="非法文件类型";
         }
      }else{
         $mes="文件不是通过HTTP POST方式上传上来的";
      }
   }else{
      switch($fileInfo['error']){
         case 1:
            $mes="超过了配置文件的大小";
            break;
         case 2:
            $mes="超过了表单允许接收数据的大小";
            break;
         case 3:
            $mes="文件部分被上传";
            break;
         case 4:
            $mes="没有文件被上传";
            break;
      }
   }
   
   return $mes;
   
}
点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消