PHP自带创建目录的代码,在upload目录下,先创建document再创建20200212两个目录# 判断存储目录是否存在,无则自动创建
$storage = '/upload/document/20200212';
if(!is_dir($storage)){
mkdir($storage,'0777',true);
chmod($storage,0777);
}
根据php文档说明,使用true就能够递归,实现上在服务器上创建document之后,就出现了权限问题。Warning: mkdir(): Permission denied in /home/public_html/app/upapi/module/Upload.php on line 158
Warning: chmod(): No such file or directory in /home/public_html/app/upapi/module/Upload.php on line 159
观察被创建的document权限是很乱的,而且没有写权限。
临时解决办法就是重写这个法,# 判断存储目录是否存在,无则自动创建
if(!is_dir($storage)){
$this->mkdirs($storage);
}
function mkdirs($dir){
return is_dir($dir) or ($this->mkdirs(dirname($dir)) and mkdir($dir,0777));
}
标签: 递归
非特殊说明,本博所有文章均为博主原创。
最新文章