(PHP 4, PHP 5, PHP 7, PHP 8)
chmod — Modifica as permissões do arquivo
Tenta mudar as permissões do arquivo especificado para o especificado em
permissions
.
filename
O caminho para o arquivo.
permissions
Note que permissions
não é automaticamente
assumido como valor em octal, então para assegurar a operação esperada,
é necessário prefixar permissions
com um zero (0).
Strings como "g+w" naõ irão funcionar adequadamente.
<?php
chmod ("/arquivo/diretorio", 755); // decimal; provavelmente incorreto
chmod ("/arquivo/diretorio", "u+rwx,go+rx"); // string; incorreto
chmod ("/arquivo/diretorio", 0755); // octal; representação correta do modo
?>
O parâmetro permissions
consiste de três componentes
numéricos em octal especificando restrições de acesso para o proprietário,
para o grupo de usuário onde está o proprietário e para todos os outros usuários,
nesta ordem. Um componente pode ser calculado adicionando-se as permissões
necessárias para o usuário alvo. O número 1 significa direito de
execução, 2 significa direito de escrita,
4 significa direito de leitura. Some
esses números para especificar os direitos desejados. Pode-se consultar mais
sobre modos em sistemas Unix com os comandos 'man 1 chmod'
e 'man 2 chmod'.
<?php
// Escrita e leitura para o proprietário, nada mais para ninguém
chmod ("/somedir/somefile", 0600);
// Escrita e leitura para o proprietário, leitura para todos os outros
chmod ("/somedir/somefile", 0644);
// Tudo para o proprietário, leitura e execução para os outros
chmod ("/somedir/somefile", 0755);
// Tudo para o proprietário, leitura e execução para o grupo do prop
chmod ("/somedir/somefile", 0750);
?>
Em caso de falha, um aviso E_WARNING
é emitido.
Nota:
O usuário atual é aquele sob o qual o PHP é executado. Provavelmente não é o mesmo usuário que acessa linha de comando ou FTP. O modo pode ser modificado apenas pelo usuário proprietário do arquivo na maioria dos sistemas.
Nota: Esta função não funcionará em arquivos remotos, pois o arquivo a ser examinado deve ser acessível através do sistema de arquivos do servidor.