几天前,我在使用 php-function mkdir
时碰巧设置了错误的权限,如下所示:
mkdir("foldername", 777, true);
正确的方法是,假设您需要那些类型的权限:
mkdir("foldername", 0777, true);
我知道我不应该在我的文件或文件夹上使用 777,但这是一个非常封闭的系统,所以请不要拘泥于此。因为有趣(怪异)的部分来了,至少对我来说是这样。因为我们注意到当这个脚本创建文件夹时有些东西很奇怪。设置的权限真的很奇怪,尤其是对于像我这样的非高级 linux 用户。因为我们看到的是创建的文件夹的权限设置为:
d r - - - - x - - t
这对我来说很奇怪,我以前没有听说过粘性位(t
),但当您想让该文件只能由 root 移除时,它显然已设置。有谁知道为什么 PHP 会这样,或者它是否甚至是 PHP 问题(不是真正的问题,因为我当时错误地使用了该函数),或者这是我们的 *nix 系统在有疑问时默认执行的操作或者其他的东西?
最佳答案
文件权限采用八进制表示法(以 8 为基数)。
777 在那里是十进制,它表示 01411 八进制,这也设置了粘性...
关于php - 错误的权限设置了粘滞位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15381345/