用mkdir创建目录,多了一层我没有指定的目录?(已解决)

发布于 2022-09-04 09:36:30 字数 1017 浏览 18 评论 0

这个是thinkphp的上传设置,分别是文件名,根目录,上传目录的设置。
 $upload->saveName  =       date('YmdHis').mt_rand(1000,9999).$customerid;
 $upload->rootPath  =     "./";
 $upload->savePath  =    'Upload/Home/headpic/'.customerid.'/'; //设置附件上传目录

可以看出,我设置的目录是用指定目录+用户id拼接而成的。
而实际生成的路径,最后多了一层日期。

clipboard.png


问题已解决。
如图,LibraryThink下的Upload.class.php上传类文件,部分截图如下。
有个默认设置,开启了子目录,还有文件名。坑
clipboard.png
控制器设置成false即可
clipboard.png
还有,友情提示!!!
rootPath很重要!!如果你是使用默认的Uploads上传文件夹,并在根目录,可以无视此项操作。但是如果你的上传文件保存目录是根目录下的其他文件名,那么rootPath需要像上图一样设置。根据你的需求,去修改rootPath和savePath.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦一生花开无言 2022-09-11 09:36:30

tp的文件上传类会在savepath目录下新建subName目录,将$upload->saveName设置为空

tp源码中

'subName'=>array('date', 'Y-m-d'), //子目录创建方式,[0]-函数名,[1]-参数,多个参数使用数组

subName默认为日期,设置 $upload->subName = "";即可

影子的影子 2022-09-11 09:36:30

根据你提供的代码无法看出来,正确的路径应该是

Upload/Home/headpic/1/

但是你的customerid后面还有1个日期目录不知道是哪里拼接上去的,多贴点代码看看,第一行应该是文件名

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文