当前位置:首页 > CMS教程 > Thinkphp > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-12-07 15:44:06 浏览: 评论:0 

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

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

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

  1. /** 
  2.  * 移动文件 
  3. * @access public 
  4.  * @param string $path 保存路径 
  5. * @param string|bool $savename 保存的文件名 默认自动生成 
  6. * @param boolean $replace 同名文件是否覆盖 
  7. * @return false|File 
  8.  */ 
  9.  
  10.   public function move($path$savename = true, $replace = true){ 

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

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

$saveName = 'Tom';

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

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

Thinkphp5上传文件名

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

Thinkphp5上传文件名

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

Tags: Thinkphp5上传文件名

分享到: