【发布时间】:2013-03-01 03:41:07
【问题描述】:
前几天在使用php-functionmkdir的时候碰巧设置权限错误是这样的:
mkdir("foldername", 777, true);
正确的方法是,假设你想要那些权限:
mkdir("foldername", 0777, true);
我知道我不应该在我的文件或文件夹上使用 777,但这是针对一个非常封闭的系统,所以请不要拘泥于此。因为至少对我来说,这是有趣(奇怪)的部分。因为我们注意到当这个脚本创建文件夹时有些奇怪。设置的权限真的很奇怪,特别是对于像我这样的非 linux 高级用户。因为我们看到的是创建的文件夹的权限被设置成这样:
d r - - - - x - - t
这对我来说很奇怪,我之前没有听说过粘性位(t),但是当你想让该文件只能由 root 删除时,这显然是设置的。有谁知道为什么 PHP 会这样,或者它甚至是 PHP 问题(不是真正的问题,因为我当时错误地使用了该函数),或者这是我们的 *nix 系统在有疑问时默认执行的操作或者其他的东西?
【问题讨论】:
-
通常
mkdir("foldername", 01777, true);设置粘性位。不知道为什么只有 777 会设置它。 -
文件权限采用八进制表示法(以 8 为基数)。 777 是十进制的,这意味着 01411 八进制也设置了粘性...
标签: php linux directory file-permissions