PHP Conference Nagoya 2025

chown

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

chown改变文件的所有者

说明

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

尝试将文件 filename 的所有者改成用户 user(由用户名或用户 ID 指定)。 只有超级用户可以改变文件的所有者。

参数

filename

文件路径。

user

用户名或数字。

返回值

成功时返回 true, 或者在失败时返回 false

示例

示例 #1 简单的 chown() 用法

<?php

// 要使用的文件名和用户名
$file_name= "foo.php";
$path = "/home/sites/php.net/public_html/sandbox/" . $file_name ;
$user_name = "root";

// 设置用户
chown($path, $user_name);

// 检测结果
$stat = stat($path);
print_r(posix_getpwuid($stat['uid']));

?>

以上示例的输出类似于:

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

注释

注意: 此函数不能作用于远程文件,被检查的文件必须是可通过服务器的文件系统访问的。

注意: 在 Windows 上对普通文件使用此函数会静默失败。

参见

添加备注

用户贡献的备注 1 note

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).
To Top