PbootCMS二开设置默认转存文件时为原文件名
发布时间:2021-10-31 16:36:51
作者:超级管理员
来源:本站
浏览量(1425)
点赞(274)
摘要:PbootCMS二开设置默认转存文件时为原文件名(通过正则判断达到过滤字符功能)只需修改两个部分代码即可按此路径找到PbootCMS文件转存设置文件:/core/function/file.php打开file.php文件找到229行(不同版本可能位置不一样)$file_ext=strtolower(end($file));//获取扩展在下面添加$file
PbootCMS二开设置默认转存文件时为原文件名(通过正则判断达到过滤字符功能)
只需修改两个部分代码即可
按此路径找到PbootCMS文件转存设置文件:/core/function/file.php
打开 file.php 文件
找到229行(不同版本可能位置不一样)
$file_ext = strtolower(end($file)); // 获取扩展
在下面添加
$file_all = reset($file); // 获取文件名 $file_name = preg_replace('/W/','',$file_all);// 过滤所有非字母、数字以及下划线的字符
过滤非(大小写英文字母、数字和下划线)的字符 反斜杠W
过滤非(大小写英文字母、数字和下划线和-)的字符 ^反斜杠w反斜杠-
过滤非(汉字、大小写英文字母、数字和下划线)的字符 /^a-zA-Z0-9_反斜杠p{Han}/u
正则表达式替换下面红色部分,反斜杠汉字需换成英文反斜杠
$file_name = preg_replace('/W/','',$file_all);
过滤所有非字母、数字、下划线、- 则改为
$file_all = reset($file); // 获取文件名 $file_name = preg_replace('/^w-/','',$file_all);// 过滤所有非字母、数字以及下划线和-的字符
找到262行(不同版本可能位置不一样)
$file_path = $save_path . '/' . $file_type . '/' . date('Ymd') . '/' . time() . mt_rand(100000, 999999) . '.' . $file_ext;
改成
$file_path = $save_path . '/' . $file_type . '/' . date('Ymd') . '/' . $file_name . '.' . $file_ext;
然后保存文件即可
本页面上传的文件即是直接后台上传未处理的文件,在通过上述配置后已不会再重命名文件,直接保存为原文件名,文件名避免使用中文和特殊字符
编辑器里 反斜杠 容易被编辑器过滤,为保证代码正确,请下载文末附件查看或者对照下图,查看代码是否正确
扫一扫,关注我们
274