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 相关文章推荐
php生成WAP页面
Oct 09 PHP
php下把数组保存为文件格式的实例应用
Feb 08 PHP
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
Mar 15 PHP
PHP读取文件内容后清空文件示例代码
Mar 18 PHP
php实现的DateDiff和DateAdd时间函数代码分享
Aug 16 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
Aug 19 PHP
php获取随机数组列表的方法
Nov 13 PHP
微信随机生成红包金额算法php版
Jul 21 PHP
PHP基于openssl实现的非对称加密操作示例
Jan 11 PHP
php扩展开发入门demo示例
Sep 23 PHP
PHP调用QQ互联接口实现QQ登录网站功能示例
Oct 24 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
我的论坛源代码(十)
2006/10/09 PHP
用PHP和ACCESS写聊天室(二)
2006/10/09 PHP
php fsockopen中多线程问题的解决办法[翻译]
2011/11/09 PHP
php常用的url处理函数总结
2014/11/19 PHP
php支持断点续传、分块下载的类
2016/05/02 PHP
PHP mysqli_free_result()与mysqli_fetch_array()函数详解
2016/09/21 PHP
php版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
php curl操作API接口类完整示例
2019/05/21 PHP
对采用动态原型方式无法展示继承机制得思考
2009/12/04 Javascript
给artDialog 5.02 增加ajax get功能详细介绍
2012/11/13 Javascript
Firefox下无法正常显示年份的解决方法
2014/09/04 Javascript
javascript中parseInt()函数的定义和用法分析
2014/12/20 Javascript
jQuery插件实现大图全屏图片相册
2015/03/14 Javascript
全面解析Bootstrap表单使用方法(表单样式)
2015/11/24 Javascript
JQuery 两种方法解决刚创建的元素遍历不到的问题
2016/04/13 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
js实现导航栏中英文切换效果
2017/01/16 Javascript
JavaScript中in和hasOwnProperty区别详解
2017/08/04 Javascript
jQuery实现数字华容道小游戏(实例代码)
2020/01/16 jQuery
vue中的双向数据绑定原理与常见操作技巧详解
2020/03/16 Javascript
JavaScript canvas实现跟随鼠标移动小球
2021/02/09 Javascript
初学python数组的处理代码
2011/01/04 Python
python处理大数字的方法
2015/05/27 Python
python压缩文件夹内所有文件为zip文件的方法
2015/06/20 Python
Python的消息队列包SnakeMQ使用初探
2016/06/29 Python
Python实现公历(阳历)转农历(阴历)的方法示例
2017/08/22 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
Python爬虫设置代理IP的方法(爬虫技巧)
2018/03/04 Python
python enumerate内置函数用法总结
2020/01/07 Python
Python3.6 中的pyinstaller安装和使用教程
2020/03/16 Python
jupyter notebook读取/导出文件/图片实例
2020/04/16 Python
amazeui模态框弹出后立马消失并刷新页面
2020/08/19 HTML / CSS
ProForm英国站点:健身房和健身器材网上商店
2019/06/05 全球购物
物流仓储实习自我鉴定
2013/09/25 职场文书
小学总务工作总结
2015/08/13 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers