这几天在做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。
存进数据库的名字也是Tom,说明文件名是完全改了的。
由此可得,需要什么功能直接去框架的文件里面去找,感觉比看手册详细多了!
总结
以上所述是小编给大家介绍的Thinkphp5 自定义上传文件名的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
您可能感兴趣的文章:- thinkPHP5框架整合plupload实现图片批量上传功能的方法
- Thinkphp5框架实现图片、音频和视频文件的上传功能详解
- ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
- Thinkphp5+plupload实现的图片上传功能示例【支持实时预览】
- ThinkPHP5+Layui实现图片上传加预览功能
- ThinkPHP5.0 图片上传生成缩略图实例代码说明
- thinkphp5上传图片及生成缩略图公共方法(分享)
- 基于ThinkPHP5.0实现图片上传插件
- Thinkphp5+PHPExcel实现批量上传表格数据功能
- thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json完整实例
- thinkphp5 框架结合plupload实现图片批量上传功能示例