PHP | chown 函数

怎样修改文件的所有者

最近更新时间 2020-12-17 20:48:09

chown 函数修改文件的所有者。

函数接收两个参数,user 为混合类型,可以是用户名或 ID(Windows系统下只有用户名)。只有超级用户才可改变文件所有者。

在 Windows 中,如果是普通文件直接返回 false

函数定义

chown(string $filename, mixed $user):bool
// 源文件位于:ext/standard/filestat.c
# 函数定义

PHP_FUNCTION(chmod)
{
	...
  #if defined(WINDOWS)
    /* We have no native chown on Windows, nothing left to do if stream doesn't have own implementation */
    RETURN_FALSE;
  #else
  ...
  ret = VCWD_CHOWN(filename, uid, -1);
  if (ret == -1) {
    php_error_docref(NULL, E_WARNING, "%s", strerror(errno));
    RETURN_FALSE;
  }
  RETURN_TRUE;
}

参数

  • checkfilename -文件路径,不能是网络路径。
  • checkuser -所属用户。可以是用户名或数字。

返回值

  • checkbool - 成功时返回 TRUE,或者在失败时返回 FALSE。

示例1: - 使用 chown() 函数设置文件所属用户。

<?php
/**
 * PHP 使用 chmod() 函数设置文件所属用户。
 *
 * @since Version 1.0.0
 * @filesource
 */

// 文件路径
$path = "./foo.txt";

// 设置为 root 用户
chown($path, "root");
// 同上,大多数系统中 root 的 ID 为 0。
// chown($path, 0);
rss_feed