Php mkdir写入权限
我有个小问题。我在StackOverflow中搜索过类似的东西,但它们似乎没有帮助(据我所知) 我在Php mkdir写入权限,php,codeigniter,mkdir,Php,Codeigniter,Mkdir,我有个小问题。我在StackOverflow中搜索过类似的东西,但它们似乎没有帮助(据我所知) 我在php中使用mkdir,它工作正常,每月都会创建一个新目录。但是,我刚刚注意到,在月份更改后,目录是在没有写入权限的情况下创建的。我相信这与使用0777来允许最大访问权限有关,但是使用它没有任何变化,并且我相信这是设置为默认的,没有out 代码如下: if (!is_dir($this->config->item('rootpath').'/assets/documents/'.$da
php
中使用mkdir
,它工作正常,每月都会创建一个新目录。但是,我刚刚注意到,在月份更改后,目录是在没有写入权限的情况下创建的。我相信这与使用0777来允许最大访问权限有关,但是使用它没有任何变化,并且我相信这是设置为默认的,没有out
代码如下:
if (!is_dir($this->config->item('rootpath').'/assets/documents/'.$date))
{
$subDirectory = mkdir($this->config->item('rootpath').'/assets/documents/'.$date, 0777);
}
else
$subDirectory = $this->config->item('rootpath').'/assets/documents/'.$date;
只有在尝试上载文件后,权限才会被拒绝,我可以为生成的文件夹设置写入权限,然后重新提交文件上载。在
mkdir
旁边添加权限,如下所示:
$subDirectory = mkdir( $this->config->item( 'rootpath' ) . '/assets/documents/' . $date, 0777 );
这就是我的意思。我已经开始与这个,但我相信如果没有它写,它默认为0777无论如何。即使最后有了这个或0755,文件夹也是以只读方式创建的?对我个人来说,如果没有显示权限,我不会得到644+,如果你的文件夹有777权限,你就不会有写这些文件夹的问题。好吧,很公平。然而,假设我的代码现在正好包含您放置它的位置,并且没有任何更改…这就是正在发生的事情。因此,我觉得问题出在其他地方……我已将错误消息设置为显示在这段代码上。。。。$temp_file_location=$subDirectory.'/'.$thisServerFileName;如果(!move_upload_file($_FILES[“filename”][“tmp_name”],$temp_file_location)){$body_data[“error”][]=“由于权限错误,无法移动文件。”。取消链接($_FILES[“filename”][“tmp_name”];)但是,当我在创建文件夹后手动转到并更改权限时,上传很好。这可能与您的umask有关。Try$oldumask=umask(0);mkdir(“您的_dir”,0777);乌马斯克($奥杜马斯克);