Thinkphp5 自定义上传文件名的实现方法


Posted in PHP onJuly 23, 2019

这几天在做tp5的上传文件模块,项目需求是要把文件名在上传之后修改为 用户名+原文件名的组合形式,在网上找了一会儿发现好像没有类似的文章。。。只好自己去研究研究了。

之前查看过看云上面的官方手册,文件上传那一块真的是讲的含糊,对于我们这个为了项目自学tp5的大学生来说到处都是知识盲区啊。

Tp5文件相关操作模块都在 thinkphp\library\think\File.php里面,我们找到第335行的move()函数

/**
 * 移动文件
* @access public
 * @param string $path 保存路径
* @param string|bool $savename 保存的文件名 默认自动生成
* @param boolean $replace 同名文件是否覆盖
* @return false|File
 */

  public function move($path, $savename = true, $replace = true){

上面写的 $savename 是一个String或者bool类型,所以直接传入文件名或者文件名变量就行了

在自己的相关代码里写上:

$saveName = 'Tom';
$info = $file->move('./Upload',$saveName,false);

再上传一次就可以看到上传的文件已经被修改为了Tom。

Thinkphp5 自定义上传文件名的实现方法

存进数据库的名字也是Tom,说明文件名是完全改了的。

Thinkphp5 自定义上传文件名的实现方法

由此可得,需要什么功能直接去框架的文件里面去找,感觉比看手册详细多了!

总结

以上所述是小编给大家介绍的Thinkphp5 自定义上传文件名的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

PHP 相关文章推荐
递归列出所有文件和目录
Oct 09 PHP
笑谈配置,使用Smarty技术
Jan 04 PHP
PHP生成图片验证码、点击切换实例
Jun 25 PHP
PHP读取大文件的多种方法介绍
Apr 04 PHP
PHP之图片上传类实例代码(加了缩略图)
Jun 30 PHP
Zend Framework实现自定义过滤器的方法
Dec 09 PHP
详解php中的implements 使用
Jun 13 PHP
Laravel中Facade的加载过程与原理详解
Sep 22 PHP
PHP操作Postgresql封装类与应用完整实例
Apr 24 PHP
laravel使用Faker数据填充的实现方法
Apr 12 PHP
解决laravel5中auth用户登录其他页面获取不到登录信息的问题
Oct 08 PHP
php如何实现数据库的备份和恢复
Nov 30 PHP
PHP中__set()实例用法和基础讲解
Jul 23 #PHP
PHP大文件分块上传功能实例详解
Jul 22 #PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
Jul 22 #PHP
php多进程应用场景实例详解
Jul 22 #PHP
PHP实现的多进程控制demo示例
Jul 22 #PHP
php+lottery.js实现九宫格抽奖功能
Jul 21 #PHP
在 Laravel 项目中使用 webpack-encore的方法
Jul 21 #PHP
You might like
php变量作用域的深入解析
2013/06/03 PHP
PHP使用glob函数遍历目录或文件夹的方法
2014/12/16 PHP
PHP经典设计模式之依赖注入定义与用法详解
2019/05/21 PHP
比较简单的异步加载JS文件的代码
2009/07/18 Javascript
点击按钮或链接不跳转只刷新页面的脚本整理
2013/10/22 Javascript
javascript表单验证使用示例(javascript验证邮箱)
2014/01/07 Javascript
iframe窗口高度自适应的实现方法
2014/01/08 Javascript
jQuery获取节点和子节点文本的方法
2014/07/22 Javascript
js+html5实现可在手机上玩的拼图游戏
2015/07/17 Javascript
JavaScript如何实现跨域请求
2016/08/05 Javascript
JS经典正则表达式笔试题汇总
2016/12/15 Javascript
javascript函数的四种调用模式
2017/01/08 Javascript
vue-resourse将json数据输出实例
2017/03/08 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
vue将对象新增的属性添加到检测序列的方法
2018/02/24 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
详解JS取出两个数组中的不同或相同元素
2019/03/20 Javascript
JavaScript中0、空字符串、'0'是true还是false的知识点分享
2019/09/16 Javascript
javascript读取本地文件和目录方法详解
2020/08/06 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
2020/11/16 Javascript
两个命令把 Vim 打造成 Python IDE的方法
2016/03/20 Python
pycharm设置注释颜色的方法
2018/05/23 Python
django创建简单的页面响应实例教程
2019/09/06 Python
python os.path.isfile()因参数问题判断错误的解决
2019/11/29 Python
Python多线程正确用法实例解析
2020/05/30 Python
Python collections.defaultdict模块用法详解
2020/06/18 Python
亚马逊西班牙购物网站:amazon西班牙
2017/03/06 全球购物
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类
2012/02/06 面试题
实习教师自我鉴定
2013/09/27 职场文书
省级四好少年事迹材料
2014/01/25 职场文书
销售主管岗位职责
2014/02/08 职场文书
党员群众路线承诺书
2014/05/20 职场文书
北京故宫导游词
2015/01/31 职场文书
2015年社区反邪教工作总结
2015/10/14 职场文书
忠诚教育学习心得体会
2016/01/23 职场文书
特别篇动画《总之就是非常可爱 ~制服~》PV公开,2022年夏季播出
2022/04/04 日漫