php - 用mkdir创建目录,多了一层我没有指定的目录?(已解决)
本文介绍了php - 用mkdir创建目录,多了一层我没有指定的目录?(已解决)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
这个是thinkphp的上传设置,分别是文件名,根目录,上传目录的设置。
$upload->saveName = date('YmdHis').mt_rand(1000,9999).$customerid;
$upload->rootPath = "./";
$upload->savePath = 'Upload/Home/headpic/'.customerid.'/'; //设置附件上传目录
可以看出,我设置的目录是用指定目录+用户id拼接而成的。
而实际生成的路径,最后多了一层日期。
问题已解决。
如图,LibraryThink下的Upload.class.php上传类文件,部分截图如下。
有个默认设置,开启了子目录,还有文件名。坑
控制器设置成false即可
还有,友情提示!!!
rootPath很重要!!如果你是使用默认的Uploads上传文件夹,并在根目录,可以无视此项操作。但是如果你的上传文件保存目录是根目录下的其他文件名,那么rootPath需要像上图一样设置。根据你的需求,去修改rootPath和savePath.
解决方案
tp的文件上传类会在savepath目录下新建subName目录,将$upload->saveName设置为空
tp源码中
'subName'=>array('date', 'Y-m-d'), //子目录创建方式,[0]-函数名,[1]-参数,多个参数使用数组
subName默认为日期,设置 $upload->subName = "";即可
这篇关于php - 用mkdir创建目录,多了一层我没有指定的目录?(已解决)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文