如何使用php创建目录并将其chmod设置为0777?我已经通过PHP搜索了与chmod相关的其他堆栈文章,所有文章都是与文件相关的,而不是目录...
public function store(Document $document) {
if (!isset($document->id)) { $document->id = $this->generateId(); }
//This is my guess how to do it..
$this->path = $this->path . DIRECTORY_SEPARATOR
if (!file_exists($this->path)) {
mkdir($this->path);
chmod($this->path, 0777);
}
//My guess does not work
$path = $this->getPathForDocument($document->id);
$data = $this->formatter->encode((array) $document);
return file_put_contents($path, $data);
}
答案 0 :(得分:1)
您必须确保您当前的Web服务器用户对要运行mkdir命令的文件夹具有写权限。否则,您将无法使用PHP的mkdir方法。如果您无法创建文件夹,则也无法更改其所有权。
因此,首先请确保您的Web服务器用户具有适当的权限。然后在上面运行您的代码。
答案 1 :(得分:0)
偶然发现:PHP mkdir: Permission denied problem
他们建议: chown -R www-data:www-data /var/www/example.com/public_html/ chmod -R g + rw /var/www/example.com/public_html /
它确实有效。
谢谢:)