视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Thinkphp5 自定义上传文件名的实现方法
2020-11-27 14:43:18 责编:小采
文档

这几天在做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 自定义上传文件名的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

下载本文
显示全文
专题