chmod - Изменяет режим доступа к файлу
Вернуться к: Файловая система
chmod
(PHP 4, PHP 5, PHP 7)
chmod — Изменяет режим доступа к файлу
Описание
$filename
, int $mode
)
Осуществляет попытку изменения режима доступа указанного файла
на режим, переданный в параметре mode
.
Список параметров
-
filename
-
Путь к файлу.
-
mode
-
Обратите внимание, что значение параметра
mode
не переводится автоматически в восьмеричную систему счисления, поэтому, чтобы удостовериться в том, что режим был установлен верно, предваряйте нулем (0) значение передаваемое в параметреmode
. Строки, такие как "g+w", не будут работать должным образом.<?php
chmod("/somedir/somefile", 755); // десятичное, скорее всего, указано неверно
chmod("/somedir/somefile", "u+rwx,go+rx"); // строка, неверный способ
chmod("/somedir/somefile", 0755); // восьмеричное, верный способ
?>Значение параметра
mode
состоит из трех восьмеричных чисел, определяющих уровень доступа для владельца файла, для группы, в которую входит владелец, и для других пользователей, соответственно. Число, определяющее уровень пользователя, может быть вычислено путем суммирования значений, определяющих права: 1 - доступ на выполнение, 2 - доступ на запись, 4 - доступ на чтение. Сложите эти числа для указания нужного права доступа. Более подробно о системе прав в системах Unix вы можете узнать с помощью команд 'man 1 chmod' и 'man 2 chmod'.<?php
// Доступ на запись и чтение для владельца, нет доступа для других
chmod("/somedir/somefile", 0600);
// Доступ на запись и чтение для владельца, доступ на чтение для других
chmod("/somedir/somefile", 0644);
// Полный доступ для владельца, доступ на чтение и выполнение для других
chmod("/somedir/somefile", 0755);
// Полный доступ для владельца, доступ на чтение и выполнение для группы владельца
chmod("/somedir/somefile", 0750);
?>
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Примечания
Замечание:
Текущим пользователем является пользователь, от имени которого выполняется PHP. Возможно, что это будет не тот пользователь, под именем которого вы получаете доступ к командной оболочке или учетной записи FTP. На большинстве систем режим доступа к файлу может быть изменен только его владельцем.
Замечание: Эта функция неприменима для работы с удаленными файлами, поскольку файл должен быть доступен через файловую систему сервера.
Замечание:
При включенном безопасный режим PHP проверяет имеет ли файл или директория, с которой вы работаете, такой же UID (id владельца), как и выполняемый скрипт. Кроме того, вы не можете устанавливать SUID, SGID и "липкие" (sticky) биты.
Смотрите также
- chown() - Изменяет владельца файла
- chgrp() - Изменяет группу владельцев файла
- fileperms() - Возвращает информацию о правах на файл
- stat() - Возвращает информацию о файле
Вернуться к: Файловая система