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