服务器之家

服务器之家 > 正文

ThinkPHP3.0略缩图不能保存到子目录的解决方法

时间:2020-01-13 15:44     来源/作者:PHP教程网

解决办法一(ThinkPHP官方提供的办法,我并没有测试过):升级到ThinkPHP3.1最新的UploadFile.class.php(https://github.com/liu21st/extend/tree/master/Extend/Library/ORG/Net),下载后替换原来的UploadFile.class.php

解决办法二:修改UploadFile.class.php的部分代码

这是自己做的解决办法,增加一个略缩图子目录生成函数
步骤1>>

UploadFile.class.php中模仿getSubName()函数创建一个getThumbSubName()函数 
 

复制代码代码如下:

private function getThumbSubName($file) { 
  switch($this->subType) { 
    case 'date': 
      $dir = date($this->dateFormat,time()); 
      break; 
    case 'hash': 
    default: 
      $name = md5($this->thumbPath); 
      $dir = ''; 
      for($i=0;$i<$this->hashLevel;$i++) { 
        $dir .= $name{$i}.'/'; 
      } 
      break; 
  } 
  if(!is_dir(($this->thumbPath).$dir)) { 
    mkdir(($this->thumbPath).$dir); 
  } 
  return $dir; 


步骤2>> 

UploadFile.class.php中158行改为 

复制代码代码如下:

$thumbPath = $this->thumbPath?$this->thumbPath.($this->autoSub?$this->getThumbSubName($file).'/':''):$file['savepath']; 


最后问题解决!

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
配置IIS网站web服务器的安全策略配置解决方案
配置IIS网站web服务器的安全策略配置解决方案 2019-05-23
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
返回顶部