Первая строка изменяет umask на ноль, сохраняя предыдущую в $oldmask. Вторая строка делает каталог с использованием требуемых разрешений и (теперь не имеет значения) umask. Третья строка возвращает umask к тому, из чего она была первоначально.
См. PHP doco для umask и mkdir для более подробной информации.
Ответ 2
На создание файлов и каталогов влияет настройка umask. Вы можете создавать файлы с определенным набором разрешений, манипулируя umask следующим образом: -
Возможно, ваш umask установлен для исключения этих
Ответ 4
Для тех, кто пробовал mkdir('path', 777);
и это не сработало.
Это потому, что, по-видимому, 0, предшествующий файловому режиму, очень важно, что говорит chmod интерпретировать пройденное число как Octal вместо десятичного.