帝国CMS上传附件命名—-以原文件名命名

帝国cms12年前 (2014)发布 admin
357 0

通过帝国CMS编辑器的上传附件功能,来上次附件时,原程序给附件的命名,都是数字+字母一大串来命名的,这种形式的命名方式,对用户来说看着很不舒服,我们需要把他改成以原文件名来命名的规则,具体方法如下:

第一步:打开文件\e\class\connect.php

查找

$r[filetype]=GetFiletype($file_name);

在下面加入

——————————————————————————–
$filename2=str_replace($r[filetype], ”, $file_name);//获得去掉后缀的文件名
$mytype = array (“.txt”, “.rar”, “.zip”, “.doc”, “.docx”, “.xlsx”, “.ppt”, “.pdf”);//定义需要保留原名的文件类型

——————————————————————————–
第二步:查找

——————————————————————————–
$r[filename]=$r[insertfile].$r[filetype];

——————————————————————————–

修改为

——————————————————————————–
if(in_array($r[filetype],$mytype)){
$r[filename]=$filename2.”_”.$r[insertfile].$r[filetype];//将真实文件名加在随机码的前面中间以_分隔
}
else
{
$r[filename]=$r[insertfile].$r[filetype];
}

——————————————————————————–

修改完成
说明:
$mytype = array (“.txt”, “.rar”, “.zip”, “.doc”, “.docx”, “.xlsx”, “.ppt”, “.pdf”); 这一句就是定义哪些文件类型需要加上源文件名的。
.$r[insertfile] 这个代表的是随机码

.$r[filetype] 这个代表的是文件类型

$filename2 这个代表的是原文件名

© 版权声明

相关文章