我需要将文件放在以当前日期(Ex : folderbefore/2017-11-15/mynewfile.sql)
命名的文件夹中。
我试过了:
在创建文件夹之前将umask设置为0:
$old = umask(0);
$directory_was_created = mkdir($path, 0777);
umask($old);
我尝试在更改权限后添加chmod
$old = umask(0);
$directory_was_created = mkdir($path, 0777);
chmod($path, 0777);
umask($old);
我总是得到一个拥有775权限的文件夹,没有权利在这个新创建的文件夹中写入(尝试使用file_put_content,他给了我FALSE并且fopen是谁抛出了错误)。
我错过了什么?
答案 0 :(得分:1)
好的,我在发布问题后立即发现了问题。
我正在使用流浪汉机器上的测试服务器。为了让我的计算机能够访问 folderbefore ,我需要在我的Vagrantfile中添加它并重启机器:
config.vm.synced_folder "path/to/folderbefore", "path/to/folderbefore/on/my/computer", id: "unique-id-for-this-folder",
owner: "vagrant",
group: "vagrant",
mount_options: ["dmode=777,fmode=777"]
答案 1 :(得分:0)
$directory_was_created = mkdir($path, 0777);
需要
$directory_was_created = mkdir($path, 0777, true);
如果要在新创建的目录中创建嵌套目录