PHP Velho Oeste 2025

chown

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

chownModifica o proprietário do arquivo

Descrição

chown(string $filename, string|int $user): bool

Tenta modificar o proprietário do filename para user. Somente o superusuário pode modificar o proprietário de um arquivo.

Parâmetros

filename

Caminho para o arquivo.

user

O nome do usuário ou número.

Valor Retornado

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

Exemplos

Exemplo #1 Uso simples de chown()

<?php

// Nome de usuário e do arquivo que serão usados
$file_name= "foo.php";
$path = "/home/sites/php.net/public_html/sandbox/" . $file_name ;
$user_name = "root";

// Define o usuário proprietário
chown($path, $user_name);

// Verifica o resultado
$stat = stat($path);
print_r(posix_getpwuid($stat['uid']));

?>

O exemplo acima produzirá algo semelhante a:

Array
(
    [name] => root
    [passwd] => x
    [uid] => 0
    [gid] => 0
    [gecos] => root
    [dir] => /root
    [shell] => /bin/bash
)

Notas

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.

Nota: No Windows, esta função falha silenciosamente quando aplicada a um arquivo normal.

Veja Também

  • chmod() - Modifica as permissões do arquivo
  • chgrp() - Altera o grupo do arquivo

adicione uma nota

Notas Enviadas por Usuários (em inglês) 2 notes

up
7
martijn at sigterm dot nl
21 years ago
If chown is filled with a variable ( chown ("myfile", $uid) the uid will be looked up through pwget_uid.

So if you need to set a non existing uid use inval($uid).
up
0
mindlessconsumer+phpnet at gmail dot com
4 days ago
It may be worth making explicitly clear that, while the shell's `chown` command allows both user and group to be set in one system call like this `chown username:groupname filename`, PHP's version unfortunately does not:

<?php
// This will not work.
chown($filename, 'username:groupname');

// You have to use two separate calls.
chown($filename, 'username');
chgrp($filename, 'groupname');
?>
To Top