chmod

(PHP 4, PHP 5, PHP 7, PHP 8)

chmodModifica as permissões do arquivo

Descrição

chmod(string $filename, int $permissions): bool

Tenta mudar as permissões do arquivo especificado para o especificado em permissions.

Parâmetros

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);
?>

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Erros/Exceções

Em caso de falha, um aviso E_WARNING é emitido.

Notas

Note:

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.

Note: 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.

Veja Também

  • chown() - Modifica o proprietário do arquivo
  • chgrp() - Altera o grupo do arquivo
  • fileperms() - Obtém permissões de arquivo
  • stat() - Obtém informações sobre um arquivo