Я пытаюсь создать папку на моем сервере, используя php, когда я установил ее в 0777, она выходит как 755?mkdir() в php устанавливает разрешение на папку для 755, но мне нужно 777?
mkdir($create_path, 0777);
Спасибо
Я пытаюсь создать папку на моем сервере, используя php, когда я установил ее в 0777, она выходит как 755?mkdir() в php устанавливает разрешение на папку для 755, но мне нужно 777?
mkdir($create_path, 0777);
Спасибо
Попробуйте это:
$old_umask = umask(0);
mkdir($create_path, 0777);
umask($old_umask);
Umask процесса устанавливается на 0022. Вам необходимо установить его в 0, если вы хотите создать что-то с этими двумя битами записи.
Это действительно работает для меня !, вы должны закрыть сейчас этот вопрос!
Дать 777 разрешений!
$estructure = '../files/folderName';
if(!mkdir($estructure, 0777, true)){
echo "<br/><br/>ERROR: Fail to create the folder...<br/><br/>";
} else echo "<br/><br/>!! Folder Created...<br/><br/>";
chmod($estructure, 0777);
Наслаждайтесь!
Кроме того, второй аргумент 'mkdir()' is ** NOT ** применяется рекурсивно. Итак, вам нужно изменить разрешения с помощью 'chmod()' впоследствии. – Kamiccolo
Почему вы устанавливаете '$ old_umask = umask (0);', а затем 'umask ($ old_umask);'? потому что установить его один раз на вершине достаточно, почему вы устанавливаете его снова в финале? –