gpt4 book ai didi

php - 什么是 PHP 中的文件组(使用 chgrp() 更改)?

转载 作者:可可西里 更新时间:2023-11-01 10:14:19 28 4
gpt4 key购买 nike

我在 Google 上搜索了此信息,但找不到任何详细信息。我正在阅读 chgrp()并且提到这个函数可以改变文件组。

没有解释什么是文件组。我还尝试在引用页上运行该示例以查看输出是否可以帮助我更多地了解该函数,但输出似乎只是数字零。这是示例代码:

$filename = 'stats.txt';
$format = "%s's Group ID @ : %d\n";
printf($format, $filename, filegroup($filename));
chgrp($filename, 10);
clearstatcache(); // do not cache filegroup() results
printf($format, $filename, filegroup($filename));

这是该代码的输出:

stats.txt's Group ID : 0
stats.txt's Group ID : 0

最佳答案

在 unix 中,文件所有权基于所有者和组。

这是 linux 机器上的目录列表:

[vagrant@localhost:nginx]$ ls -l
total 8
drwxrwxrwx. 1 vagrant vagrant 136 Feb 5 2016 configs
-rwxrwxrwx. 1 vagrant vagrant 1348 Aug 19 07:34 docker-entrypoint.sh
-rwxrwxrwx. 1 vagrant vagrant 786 Feb 5 2016 Dockerfile

在这种情况下,文件 docker-entrypoint.sh 由名为“vagrant”的用户和名为“vagrant”的组所有。

然后将权限分配给 3 个独立组之一:

  • 所有者权限
  • 群组权限
  • 其他用户

您关注的是 chgrp() 函数,它只是 linux 的包装器 chgrp api/命令。

可以用

检查 linux 机器上的组

cat/etc/group

每个条目末尾的数字是组号。您通常可以使用组名或号码来操纵组成员资格,因此在您的示例中,您显然显示了一个组号,但有一些与该组相关联的组名。

[vagrant@localhost:nginx]$ cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:

windows 和 unix/mac 系统之间有相同点和不同点,但它们并不是 100% 等同的。这是一个 good article on this topic .

关于php - 什么是 PHP 中的文件组(使用 chgrp() 更改)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45788890/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com